Make find->tidy resilient to filenames with spaces
Make --dep-info escape spaces in filenames

Closes #17627
Output a note when lifetimes cannot be elided from functions
Add an explanatory note when calling a closure via `&`

Closes #15506.
Clarify some borrowck errors

Closes #17263.
Use slice syntax instead of slice_to, etc.
Remove the `_` suffix from slice methods.

Deprecates slicing methods from ImmutableSlice/MutableSlice in favour of slicing syntax or the methods in Slice/SliceMut.

Closes #17273.
Put slicing syntax behind a feature gate.

[breaking-change]

If you are using slicing syntax you will need to add #![feature(slicing_syntax)] to your crate.
Review and rebasing changes
Change the `use of moved value` error to be more accurate

Previously it output `partially moved` to eagerly. This updates it to be more
accurate and output `collaterally moved` for use of values that were invalidated
by moves out of different fields in the same struct.

Closes #15630.
auto merge of #17620 : nick29581/rust/slice4, r=aturon

cc @aturon 

r? anyone?
auto merge of #17681 : jgallagher/rust/dep-info-escape-spaces, r=alexcrichton

cc #17627
auto merge of #17434 : P1start/rust/borrowck-messages, r=nikomatsakis

This was originally part of #17215.

Closes #15506.
Closes #15630.
Closes #17263.

This also partially implements #15838.
core: remove raw::GcBox.
rustrt: remove local_heap implementation.
std: remove gc module.
serialize: remove proxy impls for Gc<T>.
debug: remove Gc support from Repr.
syntax: remove unused imports of Gc and GC.
syntax: ast: remove TyBox and UnBox.