Form validation: validate all forms supplied.

This modifies the behavior of the form validation code, so that it validates all
forms provided to it, regardless of whether or not an earlier form saw an error.
Like the input validation module, the form validator's return value now has a
top-level `valid` property, plus a `detail` array with detailed information for
each specific form that was validated.

Note: Work in progress. For some reason, `wru` is silently failing to run some
of the unit tests. Looking in to this now.