Fix SyntaxErrorReporter and add unit test

Review URL: https://api.github.com/repos/google/traceur-compiler/issues/745

Closes #745.
Return Promise from Loader.import/module/define/loadAsScript/script.

API changes: no callback args.

To update code, replace any callback arguments with .then(callback, errback):
  loader.import(name, {}, callback, errback);
become
  loader.import(name, {}).then(callback, errback);

Review URL: https://api.github.com/repos/google/traceur-compiler/issues/747

Closes #747.
Reorganize InternalLoader (as driver) and LoaderHooks (as services).

Move semantics/ModuleAnalyzer and /ModuleSymbol to codegeneration/module
Rename ModuleAnalyzer to ExportListBuilder.
Rework calls to ExportListBuilder to separate codeUnit from trees.
Move LoaderHooks.transformDependencies to Loader.

Review URL: https://api.github.com/repos/google/traceur-compiler/issues/748

Closes #748.
Fix issue with labelled blocks in generators

Labelled blocks, needs to be handled similar to the loops where we have to transform the break statements.

Fixes #605

Review URL: https://api.github.com/repos/google/traceur-compiler/issues/750

Closes #750, closes #605.
Test Promise reject path for Loader.import/define/module/script/load.

Fix .script(), it was not rejecting.

Review URL: https://api.github.com/repos/google/traceur-compiler/issues/751

Closes #751.
first attempt towards #754