This is an improved form of the previous `error::Unexpected` type, now with more capabilities and generally better naming.