Haskell functions for working with posix paths