added a client class and changed some of the default code around to be able to test a little easier