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.
Refactor InternalLoader to use promises

Refactor InternalLoader to use promises instead of ad-hoc listener interface.

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

Closes #756.
Implement --script command line option to parse as Script.

Option --script followed by name of a file to be parsed as Script.
Default changed: now files are parsed as Module.
Test changes to verify values via globlals (modules have no value).
Module compilation simulates System.import() but post-pending
 System.get(normalizedName) to the output.

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

Closes #760.
Update version to 0.0.21

I should have updated the semver in the previous commit. Now I will have to do it twice.

TBR=@arv

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

Closes #761.
Propagate --script to first self-hosting build.

Update semver to 0.0.22

TBR=@arv

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

Closes #762.
Verify that Object.getPrototypeOf(module) is null

Fixes #763

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

Closes #767, closes #763.
export DirectExportVisitor

Here's the pull request for #769.

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

Closes #772.
Fix alphabetical ordering from last commit
Flexbox model for repl, reorg header UI, add link to github site

Flexbox model for repl, reorg header UI, add link to github site

This is based on #746

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

Closes #773.
Repl.html: Fix vertical alignment
Allow optional name for Loader.script(); default to empty string

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

Closes #774.