course and enrolment models

this depends on #19

1. new course model

2. course user relation model: enrolment
for 2: I think the simple rule is, if it's a class name or method name, use `describe`. everything else use `context`. Hence I have my reservations about context having both positive and negative senses of the word.

for 3: then soon `does` also cannot use as keyword :laughing: