finished implementing TraversableFile