Added type handling and printinImplemented types and printing