Changed symantics of FileTree to use nio Files.newDirectoryStream(Path) instead of file.listFiles(). NIO file tree walking is much faster. Also changed serialization to JSON
Finished Serialization/Deserialization code. Its an unholy mix of JSON and custom protocol regular language. Still need to write tests