Add parsing support for more type syntax

This adds support for

 * ArrayType
 * CallSignature
 * CosntructSignature
 * ConstructorType
 * FunctionType
 * IndexSignature
 * MethodSignature
 * ObjectType
 * PropertySignature
 * TypeParameter

The only remaining type syntax left from TS 1.0 is the TypeQuery type
expression. (Interfaces and declare as well).

This does not yet add runtime asserts for any of these.
Pass options object into scanner

This is tested by making sure that the options used by the
PlaceholderParser are propagated to the scanner.
Fix issue with windows file paths
Add parsing support for InterfaceDeclaration

This adds support for TypeScripts interface declarations to the
parser. These are just stripped at this point.
Add option --require to support node require() calls for modules=register

Pass relativeRequire as argument to module instantitor.
ModuleTransformer adds 'require' parameter to module instantitor.
Fixes #1486

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

Closes #1507, closes #1486.
Fix FindVisitor to not start the visiting in the constructor

We used to call visitAny in the constructor, which lead to bad
API where we had to set things on this before calling super.
Add support for union type syntax
Default empty command line arguments to 'true'.

e.g. --require to result in --require=true.

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

Closes #1512.
Ensure that local exports have preference over export *

Whenever an `export *` statement is used, the variable `$__exportNames` is declared as the array of known export names. Before updating a binding for an `export *` item, we first check against this list and skip if already present.

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

Closes #1439.
Fix typo in test
Rename `String#contains` to `String#includes` as per recent TC39 meeting
Parser.parseTypeReference_() takes no parameter
Format ModuleEvaluationError stacks as source.

Module evalution errors have stacks with line number in to functions bodies not files.
Print the source and indicate the errors by markers in the output.

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

Closes #1520.
Jiggle the handle on npm publish.

After several attempts to npm publish failed to send bin/, reorder the 'files'
entries in packages.json and try again.
TBR=@arv

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

Closes #1533.
Rename argument to avoid bug in Safari 5.1.

Argument 'state' in 'set state' cause Safari 5.1 to throw erroneous error

Fixes #1535

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

Closes #1537, closes #1535.
Support environments with both window and global

Fixes #1340
Closes #1377
feat(runtime): add memoization to genericType()
Support glob patterns in file names while compiling with --out

Hi guys,

I would like for the compiler to support shell patterns in sources' file names when compiling with --out option. Currently we can either use module names or file names/full paths while listing sources for compilation. That is, for example, we are currently doing this:

`traceur --out compiled.js module1.es6.js module2.es6.js module3.es6.js`

with patterns we can do it like this:

`traceur --out compiled.js *.es6.js`

or use any other pattern that glob library supports.

This patch doesn't add much in terms of complexity and since the glob library is already used in the project, we also don't need any new dependencies. It shouldn't cause problems with backwards compatibility because it only affects file names that use glob's special symbols (*, ?, [, ], etc) which are not normally used in file/module names.

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

Closes #1542.
Don't call require('path') in the runtime unless --require is used.

Drive-by: remove redundant code in runtime.js.
Fixes #1531

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

Closes #1543, closes #1531.
We depend on glob >4.3, correct package.json

See also issue #1542

TBR=@arv

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

Closes #1547.