start file system abstraction
implement Directory
continue fs abstraction