Ensure subschema validators get called in series

This fixes a bug whereby subschemas that error with async validators
did not come back in the correct order.