Support not null, default empty attributes

A project I'm upgrading from globalize2 to globalize3 has a number of attributes that are not null but default empty, e.g.

```ruby
create_table :accounts do |t|
  t.string     :notes, :null => false, :default => ""
end
```

Globalize3 converts these empty translated attributes to nil which causes a constraint violation when saving the record (globalize2 was fine).

This pull requests adds an isolated failing test that exhibits this behaviour; If you don't translate the `notes` field the new test passes.

Next step is to look at fixing the issue :)