Make baseNamespace optional for addPermissions
Cleanup and add glob matching for Operations

Globs can now be provided in place of Operation names when setting up
permissions. Glob patterns are expanded as part of permission checking
in the middleware.
s/userHasPermission/isUserAuthorized/ + async

Replace userHasPermission with isUserAuthorized and make everything
asynchronous.
Delegate authorization checking to registered callbacks
Make core rely less on a global interface

Instead of exposing things on robot.rbac, just use that as a place to
store global state. Access is now through the returned Object when
requiring hubot-rbac/src/core.
Add SimpleACL and UserConstraints mechanisms
Don't make hubot-rbac dependent on itself...