Analyzing Course Prerequisite Networks: A Graph-Theoretic Approach to Student Progression