Started a constraint satisfaction problem.

Mostly this is just IO but I think this a great problem.   I thought
haskell would be a good way to solve it since it’s essentially a
problem in math/AI rather than making it really fast.