Basic key value store in haskell