course and enrolment models

this depends on #19

1. new course model

2. course user relation model: enrolment
@lowjoel  I googled for a while, seems that the order of columns does not affects the preference but the order of index does. 

So if we query users more often, here I should index by (:course_id, :user_id) right ?