Creates a heuristic table to find the optimal path for the corners and edge pieces. Then uses A* search algorithm to get the the solution in the shortest amount of turns.