added java implementation
adds test client
makes algorithms run, outputs time elapsed
merges branches