Feature quiz

So I added a way to take a quiz. I'm not sure if it is how you guys would have done it, so suggestions/improvements are welcome. 

Basically now, there is all a "Install Quiz" link in the course admin page, that takes the user to a quiz generator page. The quiz currently has to be multiple choice with only one answer, and everything has to be text. I also added 2 columns to the assessments table in the db, quiz and quizData. The column quiz is a boolean and the quizData is a json string for the actual quiz. Then, when you click on the assessment, if it is a quiz, instead of a handin button, it's a take the quiz button. This takes the user to the quiz page and after it is taken, to the handin history page. By default, a quiz can only be taken once. 
I'm quite sure how? After the user the submits the quiz, this function grades it on the spot and takes the user to the handin history page.