DoRemove(Course course);
ClearRepository(Course course) { Check.Required(course, "course"); course.Repository = null; }
DoAdd(Course course);
SetRepository(Course course) { Check.Required(course, "course"); course.Repository = this; }