added basic (non-functional) test instrastructure
refactor of Client and Server into object and companion classes; untested
Test framework successfully generates test directories
test framework verifies client-server hashmap consistency
refactor some of Test into a separate TestUtils object