A library for making tagged choices using a monad in Haskell.