* Make CharField(blank=True) not be considered nullable
The documentation on [blank](https://docs.djangoproject.com/en/2.1/ref/models/fields/#blank) says that it "will allow the entry of an empty value", which for a string is just a 0-length string. This patch allows `CharField(blank=True,...)` to no longer be considered `Optional`.
closes#38
* fixed tests for `CharField(blank=True)`
* allow blank CharField to be nullable in the constructor, but the underlying type
is str (unless `null=True`)