Authenticator to handle OAuth interaction

* Implement an `Authenticator` class that interfaces with Namely's OAuth service
* Document public methods
Line is too long. [90/80]