Add Error impls to a few key error types
Add type annotation to deal with fallout