Add truncate_to_field_limit

This will allow you to truncate strings as part of a setter, instead of `before_validation` or `before_save`.

```
class Unicorn < ActriveRecord::Base
  include ActiveRecord::DatabaseValidations::StringTruncator
  truncate_to_field_limit :my_field
end

u = Unicorn.new(my_field: 'a' * 256)
assert_equal 'a' * 255, u.my_field
```

@byroot @fw42
don't use `write_attribute`. Just use `super(truncated_value)`