Implement ScoringProtocol

Resolves #68 . `ScoringProtocol` is a light wrapper around the `GradingProtocol`'s grading mechanism -- only the output is different. I've tested it with the command-line (scoring can be activated with the `--score` flag) and it seems to work. Here's some sample output:

    Point breakdown
    ===============
    q1: 3.0/3
    q2: 0.5/1

    Total score:
    3.5

I think if you override _on_grade and make the scores dictionary an instance variable, I think you can just use GradingProtocol's code for the most part?