Make role permissions dynamic

Allow for permissions to be registered dynamically. This will allow for the ability for models and plugins to register permissions.