Allow multiple configs

This is done by configuring multiple warden scopes that use the github strategy
while specifying custom configs (client_id, client_secret, redirect_uri, scope).

Further, the configuration logic is extracted from the strategy into its own
class, cleaning things up.
Add configuration section to README
Use new configs in example app