Allow namespaces that are redefined safely to be collapsed without warning.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=72905808
Reformatting and simplification of the type transformation expressions.
Changed notation from type('typename') to 'typename'.
Added support for parsing type() with multiple parameters which will represent the creation of a generic type.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=72908572
Re-allow the option to turn off the inferConst pass.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=72908783
[NEW TYPE INFERENCE] Don't check for equality more than necessary
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=72916276
Fix handling of synthetic block in adding "$jscomp$this" for arrow functions.

We add a synthetic block for each case in a switch statement. The declaration
for $jscomp$this should not be added to the first child of such a block.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=72917466
Add gcdPrivate API.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=72923393