take changes to enable chat

Changes were originally made by Vladan Majerech

TODO:
update protocol doc
determine what to do regarding version (old bots won't expect to get chat commands)
determine if bots should need to opt-in to get chat commands (calling updatestate while waiting for a bot to make a move could be problematic; what if the bot sends a move during the updatestate call but time expires before the updatestate call completes?)