Identity user email preferences

Adds the email preferences screen to Identity, allowing a user to opt in/out of marketing and choose the format of emails.

This pull request contains extensions to the forms in Frontend so that we can generate more complex checkbox and radio fields, as well as a updating the names of the form helpers to make them less Identity-specific.

This is the first logged-in form in the project and as such this pull request brings CSRF protection to Frontend.

We also introduce an Action builder that checks the request contains a logged-in-user, redirecting to the signin page if that is not the case.

(see also `af-next-gen-email-prefs` pull request in Identity, https://github.com/guardian/identity/pull/105)