More structural changes

Client.js is run on client-side now instead of snake.js
Added rooms, game class, and many protocols/handlers/listeners. Can now
setname->createroom->joinroom->startgame. TODO next: 1)send over game
state properly and render it. 2) Setup game logic to properly update
based on users input.