Js translator

This includes various cleanups and fixes regressions.