Highlight fields with errors & update validations.

Closes #188.

Rails automatically surrounds a field that failed to pass validations
with a div that has a class called `field_with_errors`. For some
reason, this doesn’t get added to serialized fields, so I had to write
custom methods in `form_helper.rb`.

I also updated the HTML for some of the fields so that the highlighted
field would retain the same appearance as the regular field.

While working on this, I realized some of the model validations could
be refactored and simplified.