Support for mocking out classes with assignments of the form:
class C {...}
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69810105
Removed transpilation dependency on the closure library.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69815661
Externs for Maps API v3.17.5.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69831487
Support complete parsing of ES6 template literals.

Scanning and parsing is based on Traceur's implementation. Also added template literal support in CodeGenerator.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69858097
Transpile simple template strings.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69863788
[NEW TYPE INFERENCE] Create a new subclass of JSType for types that only use the mask.

(There was a fair amount of variance in the test runs.)

Calendar: unchanged mem, unchanged speed
Closure: 61MB less mem, unchanged speed
Kix: 48MB less mem, 1.9 sec slower
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69865824
Postpone ES6 to ES3 transpilation

Experiment with moving transpilation after VariableReferenceCheck. Most preprocessing passes seem to ignore new ES6 features and spurious warnings were only reported by VarCheck. Make VarCheck use Es6SyntacticScopeCreator on ES6 input to avoid spurious warnings.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69871538
Added support for parsing multiple @template annotations. The goal is to have separate @template annotations for the upcoming type transformation language (TTL).

We need:
@template T as TTL-expression
@template R as TTL-expression

Instead of:
@template T as TTL-expression,
R as TTL-expression
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69898559
Update chrome.runtime and chrome.usb externs.

This adds an extern for chrome.runtime.Manifest.prototype.permissions
and provides more complete extern definitions for some chrome.usb
data types.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69908436
Static inheritance for classes with qualified names.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69949454
[NEW TYPE INFERENCE] Create new subclasses for a type that is just a union of objects, and a type that is a union of objects and null.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69952550
Added an empty line.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69953815
[NEW TYPE INFERENCE] Handle namespaces better.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69959272
[NEW TYPE INFERENCE] Prevent exponential slowdown.

Previously, we were reanalyzing callees in addition to arguments, potentially leading to exponential slowdown.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=69959340