(WIP) Mentoring assessment mode

The work of assessment mode. 

Currently missing:

* Taking into account the max_attempts
* Make all light children have their own *weight* for score
* Test in client app 

CC @antoviaque if you want to review and give it a try in the LMS
This would publish partial grades, right? The client wants the grade to only be published upon completion of the whole assessment -- it can still be published several times if they retry it though.