Got loading/saving of accesstype working. When the server star ts it will open the .metadata file (make sure you have it in root) and use that to set the public/private values of all of the files and directories in memory . There is a recursive Directory called rootDirectory in Server that contains the mapping of directories, as well as two dictionaries allFiles and allDirectories that contain each set of files and directories hashed by their urls. This way we can look up a file immediately from allFiles using its path as well as enumerate all of the child files in a directory by walking through the rootDirectory.