spec: add some initial syntax examples
constraint: call fail from #validate instead of raising manually
constraint: rename #in_valid_catalog?, raise instead of returning

The semantics of the check method should mirror the validate hook more
closely. It has been found during PR triage that the method name was
clunky, the new name is supposed to fit a wider range of possible uses.
constraint: call #prerun_check from autorequire

Simple hack to allow constraint semantics to work with current agent versions.