encodeEvent and decodeAction properly belong in websocket-driver.js
Notes on bogus protocol implementation