Initial work on github provider configuration

Starting integration of Github provider configuration.

This is a partial implementation that:
* Integrates the github oauth workflow into the UI
* Creates a github API client that uses the logged-in user's Oauth token
* Retrieves a list of the user's organisations
* Retrieves a list of repos for the selected organisation
* Shows placeholder menu options to organisations and repos

Pending implementation:
* Show which repos are already being "followed" by ployst within one of the user's projects
* Show which organisation has already been imported as a "team"

For further discussion:
* Decide which options we'll give to import organisations as teams and repos as repos within new or existing projects (I'd like to think of bulk import operations so that you can get set up very quickly).
* Do we care about github teams as well?
* Possible changes in the core data structures to be able to attach provider-specific info at any level: user, team, project, repo, feature.

I was thinking that we might want to prevent the system from even starting up if this is not properly set up.
As the only way to fix this will be to set up the token and restart, anyway.