More functionality for type classes

Added funtionality to type classes like map and contramap to
easily create derived type classes from existing ones via
homomorphisms.
Started to add typeclasses to typeclasses
Type classes for type classes

Adde type class instances to many type classes of arity 1.
Also renamed syntax objects.
Product type class instance for Default