New models for Questions.

Change the Question model so that to store the data we need
to be able to match up questions and answers.

NOTE - I've not made any attempt to migrate existing date properly here.
We'll need to drop and recreate these bits.
Rewrite question parser to fit the new model structure.
Remove out of date comment.
Add extra fields and constraints for president and DP oral questions.

This approach is actually flawed. It's not just the president and DP
who get their own oral question numbering. A rethink is needed.
Code for spotting DP and President oral Qs.

(flawed as mentioned before, and also mixed up with some PEP8 type
tidying).
Ignore any question which is not for written reply.

Temporary fix for launch.
Ignore questions transferred from written to oral.

Another temporary fix for launch.
Catch duplicate written numbers and log.
Temporary fix - drop anything which doesn't have a number_written.
Note document name formats we need to cope with.
Catch bad date format and continue.
Discard any answer from before the 2009 election.
Better formatting of the output.
Go back to handling all answers.
Answer is an attribute of Question rather than the other way around.