a file compressor written in Haskell