Lookup an answer to a question by hash on the questionnaire instead of the question itself.
Store answers to questions directly in questionnaire, not on question.
Based the question class on namedtuple, which also makes its instances immutable.