finish filesystem
TODO: finish createHierarchy()