Move keybindings into vm.js
harness: add keyboard events
harness: enable mouse event queue
harness: provide some Lively utility functions