Directory tree and zipper for directory traversal in haskell