traceur.compile moduleName fix

Allows `moduleName` option as a string for `traceur.compile` into AMD and instantiate
to output correctly named define statement
Extract spread runtime code into a new file

The intent is to make the runtime library more modular.

See #1007
Use undefined as trigger for default value for destructuring

Previously we used an in check which is no longer the semantics
of ES6.

Fixes #1013
Show the whole error stack on load failure

This is in reference to issue #1018

Currently only the original error message is shown. This pull request includes the whole error stack, which immediately points the user to the offending failing line.

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

Closes #1019.
Fix issue with object literal in the destructuring initializer

When we have

```js
({x = {y: 1}} = expr);
```

we ended up transforming `{y: 1}` as well which leads to an invalid
parse tree.

Fixes #1011
Extract class runtime functions into own file

See #1007
Extract generator runtime into its own file

See #1007
Move Object assign, is and mixin to polyfill directory

Move these method out of runtime.js

See #1007
Calling .next() on a closed generator shouldn't throw

`next()` on a closed generator should just return `{value: undefined, done: true}` instead of throwing an exception.

Fixes #841

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

Closes #1006, closes #841.
Catch rejections in WebPageTranscoder.

Remove call to ErrorReporter inside of Loader: all callers of Loader
are responsible for error handling via reject handlers.

Fix latent error codeUnit.address_.

Follow-on fix to issue #1018.

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

Closes #1023.
Async functions should not be generator functions

Fixes #1009
Parsing of async arrow functions work