add responsibility for CaveServer
add rest of the classes
add basic connection method stubs to Client
improve comments in Client
write some basic methods in the Server class
add basic methods to CaveSystemServer
add code to Client.run
add some basic methods to CaveServer