Given numCourses and a list of prerequisite pairs [a, b] meaning b must be taken before a, return true if it is possible to finish all courses (no cycle in the prerequisite graph).