auto-complete: added initial support for listing members of super type for classes and inner classes
auto-completion: if there are several methods with same method name then they *all* will now be listed, not just first one
updated method of calculating equals & hash code for Member-s
display proper method signature
in Apex method visibility & type can go after 'override' keyword
auto-complete: when variable under cursor has type of inner class and that type is not fully qualified we need to resolve the type to its full signature

e.g.
- Inner var;
should be
- Outer.Inner var;
enforce javac version 1.6
extend namespace with methods from System.<Class> if class matches namespace name

e.g. Database classes are in Database namespace, while Database methods are in System.Database class
Revert "enforce javac version 1.6"

This reverts commit 9f35e7b45d7f5c236e9099395d62f3be3093420c.
added grammar for apex property declaration
added Apex Property member support to parse tree
get or set of property may be omitted and can have visibility modifier
added logic to resolve children according to inheritance hierarchy

+ unique identity for inner classes
now each Member (except ApexModel ones) has a reference to ApexTree

types like Outer.Inner can now be resolved by going multi layers down: Tree -> Member -> Child
added corner case for finding symbol definition if user entered ClassName.<cursor>
improved type definition resolving logic
fixed typo - one of the results of finding type member was never returned
now actually implemented support for this.<caret> & super.<caret>

previous version did not work for super.
when registering new member of current parent and checking if such a member already exists - do not check super classes
before adding scopes in Listener