Fix form date handling

When parsing multiparameter attributes, Form ignores them if any part
is invalid. The Rails behaviour is to raise an exception. This commit
adds an error to the underlying attributes if the user input is invalid.
Changes are also made so the form library can repopulate the form with the
erroneous input instead of removing it.
Refactor Form

Pull out multiparameter method definition into MultiParameterDate
Merge pull request #123 from ministryofjustice/date-validation

Fix form date handling