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.
Repl.html: Don't hard code to use http

Also use link tag instead of @import to allow parallel downloads of resources.

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

Closes #776.
Repl.html: Reduce margins
Don't add traceur-imports to runtime.

Update semver. Fixes #780

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

Closes #782, closes #780.
Only import async from rsvp

Fixes #780

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

Closes #783, closes #780.
Experimental bundle support.

RelocatableModuleTransformer create calls to ModuleStore.register(name, deps, func),
where deps is an array of module-specifiers (unnormalized names).
Add ModuleStore.register(name, deps, func), fills bundleStore[name].
Check bundleStore during load processing, after module registry, before fetch.
If hit, create BundleCodeUnit, a TRANSFORMED codeUnit with
properties {deps, execute}.
The BundleCodeUnit participates in the remaining load processing.
Upon evaluation the [deps] are normalized and passed as names to the execute() function.

Fixes issue #754

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

Closes #764.
Add make ONLY flag: 'make ONLY=Arrow test/features' to run Arrow tests

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

Closes #794.
Refactor pretty printing to handle the white space at the AST level

We previously determined when to add the whitespace at the token level. That lead to a bunch of complicate switch statements. With this we handle the formatting at the AST level which simplifies the code significantly and it also allows us nicer result.

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

Closes #795.
Expose LoaderHook functions on Loader class

Normalize, locate, and fetch tested.

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

Closes #796.
Rename code generation starget function ModuleStore.registerModule -> Sy...

...stem.register()

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

Closes #797.
Use baseURL through out System; set to absolute path.

Remove rootURL, thread baseURL through Loader code.
On node, replace ./ by absolute path so error messages make sense.

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

Closes #800.