Socket auth

Added authentication and authorization to the real time updates. Authentication is handled by sending an 'authenticate' event from the client after connection, attaching the logged user access_token. Authorization is handled with a allowEvents method that determines if a given client should receive an event related to a given model instance.

Also did a bit of refactoring of the auth modules and added a separated example app to show the auth methods.