Build a client interface. Abstract more things. Write client tests. Add mocking framework. I should commit more.