Add UserManager Events

* websocket_rails.user_connected is dispatched when a user's first
  connection is established (i.e. the first client_connected event)
* websocket_rails.user_disconnected is dispatched when a user's last
  remaining connection is ended (i.e. the last client_disconnected event)
Delegate sync to Synchronization in UserManager
Allow EventProcessor to process user defined events
RemoteConnection#trigger