updated object diagram
generic factory + tests
updated tests
client factory
added basic readme