Sudoku solver written in haskell