Implemented:
- constraints in trait definitions
- return type checking for functions in trait definitions:
  -> can be switched off by defining Main.Traits_check_return_types=false