Adding authenticator

This Pull request is adding an account manager for the github account.
The account manager is structured in 3 layers, BetterAccountAuthenticator is a cleaned up version of the account manager aimed at simplifying the interface. Reactive authenticator is an even simpler interface cleaned using RxJava on top of the previous layer. And finally the Gertherb layer is the implementation for our project.
Yeah all the todos are not relevant to gertherb now they are just to keep in mind when we extract a lib.