Add option to take a subset of the questions in a quiz

Adds a "max_questions" field to a quiz, indicating the number of
questions to be answered on each attempt.  This is useful when the
quiz has a large pool of questions, and students are expected to take
multiple attempts and answer a different random subset of questions
each time.

Each Sitting stores a list of all the questions chosen for the
attempt, and the order in which they are presented to the user, so
that results can be displayed at the end for the question subset,
instead of for the whole quiz.
Store session info for anonymous users taking max_questions quiz

Keep track of the question subset and incorrect questions to allow
anonymous users to sit quizzes with max_questions set.
Show max_score for each attempt in progress template
Handle incorrect question toggle via post
Add start, end times to a sitting; display completion date on marking page
Show completed date on marking detail page
Display answer in readable format on marking detail page
Merge pull request #14 from trident-systems/max_questions

Max questions
updated tests to work alongside pull request from Richard Mansfield
updated contributors
updated feature list
missed a bracket
tests for the new features
Don't wipe post data during form validation
Install templatetags
Display the number of questions answered so far & the number remaining
changed request.POST object to empty dict rather than empty string before GET redirect. This prevents answer of previous question being preselected, mostly for T/F questions
Merge pull request #15 from trident-systems/master

Completion indicator
Merge branch 'master' of https://github.com/tomwalker/django-quiz

Conflicts:
	quiz/views.py
tests for sitting.progress in user and anon views