fixed bugs with enums
fixed custom test cases
fixed non-closing of some resources
fixed some more bugs
support diamond constructors
added missing files
added getClass() as an implicit member. Its type is type dependent.
bugfixes for type inference
made the tool more robust