Kakuro (logic puzzle: crosswords but with numbers) solver in Haskell, concurrent and non-concurrent version