client/server handshake don't depend on basis.js now