issue#1

Type class should have following constructors:

    Type(const PrimitiveType&)
    Type(const Class&)
    Type(const Type&)