Added proper handling of NamedTypes. Added support for TypeDefinitions. Variables now use the NamedType instead of TypeExpr.