Test data in fixtures, more test splitting.

fixtures/test_data.py now contains all the data generators used for
testing. There's 3 classes, each subclasses from the previous one, with
increasing complexity.

The test data created is basically the same as the previous embedded
test data generator, but should look a little bit cleaner now.

Answers, courses, questions, and users API tests are now in their own
separate modules. This should make maintenance a bit easier.
Update default sample data generator for 3 rounds.

Tweaking it to work better with the default 3 rounds requirement by
putting in more students. Still not really satisifactory, since the data
is more 'test' than 'sample', should make this a test data fixture
instead.