Better support for polymorphic types

Class now extends Type.  Added Primitive that extends Type.  Updated methods for polymorphic nature of types.