Like your game. The usic is nice, controls and feedback are precise and responsive. How you make sure that all puzzles have a solution? Do you start from the end and then scramble x times to come to a random but solvable starting condition?
not so complicated like that, if the puzzle was small (like the tutorial), then yes i would have, but i made the board 5x6, so i added enough pieces of each, to always find a solution.