course and enrolment models

this depends on #19

1. new course model

2. course user relation model: enrolment
Maybe we should call this `CourseUser`, for symmetry with `InstanceUser`? Enrolment can also apply to instances...