Fixed reusing test cases wrt public/private distinction

A test case is now public if it is contained in any public subtask.
Whether a subtask is public is specified in the score type parameters.