testing out gigabit api with text editor

api work

deciding between setting all of the text editor input as the value for
"js" in the JSON messages published to channel, and instead using a
publish function, so you can have other code in the text editor that
gets executed by the client
main.js web socket timeout callback

client.disconnected( callback ) fires when the connection breaks. It
calls restartState() to restart the current game state without
refreshing and without having to reselect the same bot that's been in
use
Merge branch 'John'