allow GitHub provider subclass to set new name

this allows you to create different GitHub providers with
differing permissions.
consistent parameter ordering with the base class
apply same change to all implementations of BaseOAuth20Provider<>
use 4 space indentation for consistency
Merge pull request #125 from martin308/allow-multiple-github-providers

allow BaseOAuth20Provider subclass to set name