Adds support for authorizations

Since VSO doesn't send join room information the room users are fetched when

- hubot starts (if it has been configured to join rooms)

-a command is observed in a room for which the users have not been fetched (since startup)

-the user issues a command that may require user to be in the brain (it does this by watching commands)

It supports auth and role scripts by watching the commands

- hubot <user> has <role> role
- Hubot <user> is a <role>