Feels more complete, and for ImplPolarity has the side-effect of making sure we also handle reservation impls correctly
DiagnosticBuilder
Diag
TypeVisitor
DefIdVisitor
VisitorResult