add ability to set extra params to oauth2 url endpoints

Some OAuth2 identity providers (e.g. Google) use extra, non-OAuth2 request parameters to OAuth2 endpoints in order to alter the flow in various ways.  This patch provides a way to configure extra parameters to be sent to OAuth2 endpoints.  It may also help resolve issue #158.

Two new optional configuration keys are added to OAuth2 identity providers: authorizationUrlParams and accessTokenUrlParams, e.g.:

    google {
        authorizationUrl="https://accounts.google.com/o/oauth2/auth"
        ...
        authorizationUrlParams {
            access_type=offline
        }
    }

This patch was created in collaboration with @nascosto.