Fix: Expand overloaded methods, sort methods by name and argument count

1) Overloaded methods are now stored as multiple ones.
2) Methods are now sorted first by name and last-resort by argument
   count. This makes it possible to quickly find the correct method.
Fix: Don't store enum names as fully-qualified
Fixed typeName() to handle pointer types correctly.