Abstract logging mechanism; add logging to clients
Experimental client mocking harness