Wire getDefinitionAtPosition using the new compiler implementation

There are some changes in behavior between old and new implementation, namely:
* module definition used to start at the module name, now it starts the module keyword, which is uniform with other constructs
* Goto def on function call used to take you to the matching signature instead of the definition, now it is always the definition
* new implementation support goto def on labels
* new implementation support goto def on string property names (e.g. a["prop"])
* new implementation support goto def on /// references
sure. resolveEntityName follows alises, which is not what we want here, we want to get the alias symbol and then follow it if we need to. so for goto def purposes, we want to an alias symbol to go to where the alias is defined and not to the definition location of what it aliases.