Get user roles in more modular and extensible fashion

## Get user roles in more modular and extensible fashion

### Acceptance Criteria
1. A Role Service exists with the ability to get a user's roles given a user ID.
1. The OAuth2 Provider uses the role service to find the user's roles instead of using manual queries in the authenticate method.

### Tasks
- None

### Additional Notes
- Abstracting this into the Role Service will allow projects to extend the service and perform custom logic to determine a user's roles.