Sliding Block Puzzle Solver