Fixing issue with nil values

If a default value is declared in the model, but the value is
explicictly set to nil, it will be persisted as nil. This shouldn't
happen unless allow_blank or allow_nil are true.
Better support for using default and allow_* options
Updating changelog and version
Merge branch 'fix-default-nil-persistence'