Refactor ModuleTransformer

This is to make it easier to subclass and override what code to generate.

See issue #461 for motivation.

Review URL: https://github.com/google/traceur-compiler/pull/482

Closes #482.
Extended types annotations

Type annotations work on function declarations & expressions, formal parameters, class members.

Fixes #463

Review URL: https://github.com/google/traceur-compiler/pull/480

Closes #480, closes #463.
Fix issues related to CoverInitialiser

Fixes #478

Review URL: https://github.com/google/traceur-compiler/pull/479

Closes #479, closes #478.