Bug 417185 - [Shell] Asynchronous argument proposals are broken
Move DropDownMenu selectionClass into options to fix subclasses that weren't expecting the param.
Refactoring and cleanup of content assist code.

* Extracted type environment and type inference code into separate modules.
* Fixed various jslint warnings.

Signed-off-by: Manu Sridharan <msridhar@us.ibm.com>