more accurate errors

we are passing along the errors we
care about, and not swallowing
anything