+ lots of rebasing
try
commit_if_ok
context private.
&mut Trait
for `&mut (Trait+'a)` to `&mut (Trait+'b)` if `'a:'b`. Fixes #14985.