CourseManagementService Impl notes
CourseSets play prominently in assumptions written into the CMS API (comments, at least)
CourseManagementService.isEmpty(String courseSetEid) for example assumes that the String param is a eid for a CourseSet and the OOTB hibernate implementation runs this HQL:
from CourseSetCmImpl as cs where cs.eid=:eid and (size(cs.canonicalCourses) > 0 or size(cs.courseOfferings) > 0)
We have Meeting and Section implemented and mapped now.