Feature/add classes for interface

@rheaton i stubbed out all the methods. this still needs some work. I want to dry it up a bit and finish the tests. But I am also waiting for those dudes to get back to me about the `401` status
double underscore party! :gift: