function validators now interperert all positive return values as errors, not just Errors