throw validation errors from the generator function rather from fluff

this gives actual useful context instead of a random place deep in fluff code