support -out for compile on save
Fix typo in referencedFiles property name
Cleanup emitterIOHost implementation in tsc
Make many array utility methods generic.
Update emitter with latest generic changes.
When resolving an enum, resolve it using resolveModuleDeclaration
Revert "Revert "Compiler side of the work to make sure that compile-on-save works in the IDE for unicode files.""

This reverts commit 83367c50673c4ab64dceba46af1ed44e3fc52d70.
Merge branch 'release-0.9.0' into develop
Don't double quote quoted enum member names.
Properly set spans for enum members.
Use the actual text supplied for an enum member name instead of interpreting it.
Don't report errors for implicit enum members after negative integers.
Update enum constant value computation to match the new spec.

We now compute a constant value for an enum member if it is
a) the first item in the enum, and has no initializer.
b) is initialized with an integer literal.
c) has no initializer, but follows an enum member with a constant value.

If you do this, then all references to that enum value will be replaced
with its computed constant value on emit.

Also, under the existing *experimental* -const flag, we will do some more
aggressive constant propagation.  Specifically, under that flag, we allow
an enum member's constant value to be based on another enum member's value.
We also allow enum initializers of the form: constant << constant.
Update LKG.
Update LKG.
Fix fidelity tests.
Don't emit BOM's in fidelity tests.
Initial getImplementorsAt to parity
Revert "Update tests"

This reverts commit 43065a0b8909a76dfede5a16cd578e0990b14a2d.