Haskell によるとてもナイーブな数独ソルバーを実装。

とにかく置ける可能性のある数字を置いて、それが正しい盤面になるなら探索を続
ける、そうでなければ候補から外す、を（深さ優先探索で）繰り返す。

solve q0 :: [Board] とすれば全解を、 solve q0 :: Maybe [Board] とすれば最
初に見つけた解を返す。