course and enrolment models

this depends on #19

1. new course model

2. course user relation model: enrolment
You are a db guy, if you think another way round is good, you can just tell me and may explain more to me.  I have no idea about how the orders can affect performance.