Complete answer pair generation for judgements.

The initial answer pair generation only pairs answers up randomly and by
number of times judged. The proper pair generation is supposed to be
random for the first round of judgements. For successive rounds, answers
are supposed to be paired up by score.

Pair generation is now done before hand. If there are no unjudged answer
pairs available, it generates answer pairs based on the round we're in.

If we have unjudged answer pairs in the current round, then a random one
is selected to be judged.

This pair generation means that the score generation has to be updated
too as it assumes all answer pairs are judged.

Tests are currently incomplete and should be updated in the next commit.