refactor check_call_inner to have a better name and be readable
Move the replacement of bound regions out from `check_arguments` and into check_call / method_resolution
Rather than storing a list of ty::method per trait, store one ty::method
per method and list of def-ids per trait.
Compute a ty::method for methods that appear in impls as well
Pass around a pointer to the ty::method rather than the individual bits of info
Add a (currently unused) "transformed self type" pointer into ty::method