allow GitHub provider subclass to set name

We use multiple GitHub providers so that users can use GitHub to login without giving us access to their repos but also allow them to re authorise and grant us access to their repos for additional functionality. I have altered the GitHub provider to allow me to subclass it with different scopes and names to support this.

Sound good? :sparkles: