Add support of lenient attributes

Allow to define attribute which doesn't correspond to a specific ruby class
```ruby
FastAttributes.type_cast :lenient_attribute do
  from '"yes"', to: 'true'
  from '"no"',  to: 'false'
  otherwise 'nil'
end

class LenientAttributes
  extend FastAttributes
  attribute :terms_of_service, :lenient_attribute
end

lenient = LenientAttribute.new
lenient.terms_of_service = 'yes'
lenient.terms_of_service # true
```
Describe lenient data types
Add "Lenient Data Types" section
Add note that `set_type_casting` generates lenient data type