on struct validator, index the errors by field
assign non-field errors into a generalErrors attribute of the error
on fieldErrors initialize empty array on all fields, even those without errors