770583cc6d
Impl Traits lowering minor refactors This are unrelated changes on my RPIT refactor that may be better to merge before opening the main PR. r? `@cjgillot` cc `@nikomatsakis`
For high-level intro to how type checking works in rustc, see the type checking chapter of the rustc dev guide.