add survey export

Exports survey results as a CSV file. Has to have a hardcoded list of
all possible fields as most fields are optional and without this the CSV
columns would be inconsistent and useless.

includes admin permission to do so
add date recorded to survey and diary

Save this as another entry in the key/pair way rather than adding a
column as that would lead to one result per key/value which is confusing
and unhelpful
don't know answer for range questions is -1
don't export twitter name and email

but do provide indication that email address has been recorded
one column per multi-select answer for export

For questions where you can select as many answers use one column per
possibly answer with a 1 to indicate if it's been selected.

To do this we still store a comma seperated list of the answers where
the answers are the name of the column in the export. This is then split
at export time and mapped into the export dictionary. As before we list
all possible answers in the export to keep the rows consistent.

As well as this we have to add all the possible answers to the form to
allow the multiple choice fields to work correctly.
initial tests for survey export

test permission, headers and splitting of multiple choice categories
correct type in checkbox value
WIP diary export
Merge branch 'export'

Conflicts:
	diary/views.py
	survey/templates/survey.html