Create PrivilegeSet and store PrivilegeSets and Roles in Repositories.
Introduce ArrthorizerException that can contain nested Exceptions
Register GenericRoles when they are created.
Add PrivilegeSet#make_accessible_to
Add Permission.grant
Create a PrivilegeSet in SomeControllerSpec#create_privilege_for.
WIP: Notes for building a evaluation context for ContextRoles.