Adding in successor function, greedy best first search, heuristic function and evaluation function