Allows DuplicateClinitRemover to remove clinits() that appear outside of binary comma expressions.  This prepares for an improved version of InliningVisitor that inlines multi-statement functions.

Changes:
 - Add branch() methods to take care of constructing new contexts
 - Reassign the results of a visit back to the component statements and expressions of composite JsNodes
 - Remove clinits() that appear as individual JsExprStmts

Patch by: bobv
Review by: scottb



git-svn-id: https://google-web-toolkit.googlecode.com/svn/trunk@1541 8db76d5a-ed1c-0410-87a9-c151d255dfc7
1 file changed