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.
Stop chdir into test for feature tests.

Fixes #1317
Remove require() calls in Loader test.
Fixes #1546

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

Closes #1548, closes #1317, closes #1546.
Move regexpu to devDependencies, as it is not required in deps.
Block binding: Fix issue with sibling scopes

This introduces a new Scope subclass that keeps track of references.
Then we use that to determine if we need to rename the binding or not.

Fixes #1358
recursiveModuleCompileToSingleFile: chdir on reject

Make `process.chdir` to original dir of compilation if failed. For success result chdir revert already exists.

It is needed if you need to execute other scripts after traceur compilation. And if it failed - dir should be changed to original.
Add support for type parameters for classes
Write the .map file in the same directory as the output file.
Fixes #1538
respond to review