update ForStatement
update SwitchStatement
update TryStatement
update UnaryExpression
update UpdateExpression
update VariableDeclaration behavior and add comments
update WhileStatement
update ObjectExpression
update comments to explain why we decided to keep the removeEmpty calls