First pass at cleaning up the client class