Compute the correct length of THROW nodes. Fixes issue 1072
R=blickly
Rejigger type name printing. Fixes issue 1047
R=johnlenz
Fix NPE in AttachJsDoc. Fixes issue 1073.
R=blickly
Add support for replacing templates within record types.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=51660815
Rotate commutative operators to eliminate parens.

Also, remove rotation in ReorderConstantExpression when it would add parens.
-------------
Created by MOE: http://code.google.com/p/moe-java
MOE_MIGRATED_REVID=51667839
Merge remote-tracking branch: upstream/master