Make role permissions dynamic

Allow for permissions to be registered dynamically. This will allow for the ability for models and plugins to register permissions.
I think we should key this array with `title` and `desc` so when it's used in code/ui it won't be so magical