A module that adds type lookup to a class
Set cache ivar on the model
@param [Class] model
@return [undefined]
@api private
Returns a descendant based on a name or class
@example
MyClass.determine_type('String') # => MyClass::String
@param [Class, to_s] class_or_name
name of a class or a class itself
@return [Class]
a descendant
@return [nil]
nil if the type cannot be determined by the class_or_name
@api public
Return the default primitive supported
[Validate]