part 2 of the big error reporting refactoring

The big refactoring, pt 2. review by @retronym when the 2.11.2 dust has settled