drop the client connection when a request causes an error

Fixes trello#41 https://trello.com/c/sFSHvH2a

* when a request fails, chances are high that some game objects are
  in an inconsistent state as a result (see Trello card for details);
  therefore, forcing the client to reload by closing the connection
  seems like the safest course of action
* send a server message (action CLOSE) before disconnecting the client
  (with a custom message "REQ_PROC_ERROR", which is unknown to the
  client but at least causes it not to reconnect immediately)
* "roll back" the modifications made by the request by not persisting
  them and clearing the respective objects from the live object cache
  (forcing them to be reloaded on the next access)
wrap all game objects in objrefProxies

To prevent request rollbacks after errors leaving stale objects behind
(in other objects that might not have been rolled back), always wrap
objects in proxies, so all access to game objects is routed to the
persistence layer live object cache.
Merge pull request #54 from yelworc/trello#41_disconnect-on-error

Trello#41 disconnect on error