Websocket optimize

This branch started as a reorganization of javascript functions to more easily allow for multi-city toggle, but I decided to transition all javascript to coffeescript and backbone.