Added setClient() and getClient() to AbstractClient and cleaned up class a bit.