Better architecture for roles and permission loaders