Constraint Programming over Multiple Finite Domain

Created a version with ST monad.
Merge pull request #6 from notae/wip/cfpfd-st

Constraint Programming over Multiple Finite Domain with ST monad