Refactor to extract the logic around the Scope out of models to oauth2