Some consistency in validation returns.

Public functions return a raw slice, internal helpers return errorList.