Refactor/github auth

* Just refactored the authentication procedure. 
* Created an auth module, with a github submodule.
* Credentials and hostname can now be set from shell enviornment using ``MAKEHUB_HOSTNAME``, ``GITHUB_CLIENT_ID`` and ``GITHUB_CLIENT_SECRET`` variables