Always pass the correct vm to gen-cat on the js backend.
Port over a hack, pass more tests on the js backend.