Revert last commit; fix tests, add error message.

Gareth pointed out that I was mentally doing a s/conditions/validations/; this
reverts my previous in-error commit, and adds some better error information to
the structured condition validation code. This also fixes the `form-properties`
API tests to pass once again.