Protect whole AdminController, not just every method in class

Change-Id: Id88175e606d239d5ee2932d2f403874eb29665a7
Add unit tests for Grading, improve Grading error detection (hasError replaces errorCount), add Excel export using PHPExcel and the defined template

Change-Id: I1ccfdc99523715c588359c341bac3ea90de84b16