Program for designing arbitrary Rubik's Cube like puzzles