Added a Type class. Extend to create custom types.