Feedback and Unit Tests

* Feedback: table columns shown on "submissions" page depend on feedback
* Unit Tests:
    * changed semantics
    * implemented server-sided unit tests
    * seperate unit tests from normal submissions
    * special "details" page
Since we use min {testcase scores} as score of the group, it is no problem if some cases score too high. The try...except is used because float throws a ValueError if x cannot be interpreted as float. As far as I know this is also the best way to check if a given string represents a float.