[UPDATE] Now using the client as a singleton. Cleaned up classes and updated the tests.