WIP: Add AutoBorrowTraitObj AutoRefKind, and implement relevant adjustments

This patch does not compile.

Note: Should I really be copying substs when e.g. coercing?

This implements 1-4 from my IRC conversation with Niko:

 (1) add a new adjustment for objects
 (2) modify code-generation (what we call `trans`) to deal with that
 (3) modify the method code to borrow in search_for_autosliced_method()
 (4) modify the method code to handle the @self etc coercions

I also added FIXMEs to things I wasn't sure about. Remove them if the
behaviour is correct, or fixed in the future.

cc #5762