A backtracking logic programming monad (fork of dolio's logict)  (http://code.haskell.org/~dolio/)