Add A* implementation for 8puzzle assignment