Make `Type::Numeric` inherit from `Type::Value`

`Type::Numeric` implements behaviour from `Type::Value`. 
See https://github.com/rails/rails/blob/master/activerecord/lib/active_record/type/numeric.rb#L8-L16.

Make `Type::Numeric` inherit from `Type::Value` while `Type::Float`, `Type::Integer` inherit from `Type::Numeric `instead of Value, to make the intent of inheritance more clear.