Moved handing out annotations to AG system
Introduced user defined datatypes:
  - parsing
  - handing out annotations
  - checking for duplicates

Todo
  - adding type terms (to allow pairs of types and lists of types)
  - scope check (are the used fields available)
  - obtaining the types for all the constructors (basically field -> field -> datatype)
  - and give these types to Algorithm W as part of the environment
  - handing out annotations for lists (missing case, use AG lists)