Add GitHub as an extra auth provider

Replaces PR #20

Unlike some of the other providers, scope is not necessary for getting the user information. With GitHub, the user information we need is public. Also, GitHub provides a location, but not a locale, so we are unable to set the country flag using GitHub info.

* Added test project for extra providers