rust.md: Explicitly point out how special `'static` is.

Drive-by: fix description of `&content` to point out that `&'f type`
is (as of today) only for type expressions.
Sort most attributes alphabetically
guide-runtime.md: remove redundant verb
guide-testing.md: add auxiliary verb
guide-unsafe.md: fix noun
Minor changes to `rust.md`, and `guide-ffi.md`.

  * `rust.md`: whanges for consistency

  * `guide-ffi.md`: wrapped inline code
~ -> Box in the manual

Fixes #16439
guide-unsafe.md: fix wording

Following a suggestion by Huon Wilson.
libcore: rename private cmp macros

eq_impl! => partial_eq_impl!
totaleq_impl! => eq_impl!
ord_impl! => partial_ord_impl!
totalord_impl! => ord_impl!
auto merge of #16381 : pnkfelix/rust/fsk-rust.md-fixes, r=alexcrichton

rust.md: Explicitly point out how special `'static` is.

Drive-by: fix description of `&content` to point out that `&'f type` is (as of today) only for type expressions.
Guide: Add missing integer type to section on if expressions
quote_expr macro: embed Ident using special encoding that preserves hygiene.

This adds support to `quote_expr!` and friends for round-trip hygienic
preservation of Ident.

Here are the pieces of the puzzle:

* adding a method for encoding Ident for re-reading into token tree.

* Support for reading such encoded Idents in the lexer.  Note that one
  must peek ahead for MOD_SEP after scan_embedded_hygienic_ident.

* To ensure that encoded Idents are only read when we are in the midst
  of expanding a `quote_expr` or similar, added a
  `read_embedded_ident` flag on `StringReader`.

* pprust support for encoding Ident's as (uint,uint) pairs (for hygiene).
rustc lexer: regression tests for embedded Idents.

I chose to make two of them because I wanted something close to an
"end-to-end" test (*), but at the same time I wanted a test that
would run on Windows (**).

(*) The run-make test serves as the end-to-end: It constructs an input
that is trying to subvert the hack and we are going to check that it
fails in the attempt).

(**) The compile-fail-fulldeps test serves as a more narrow test that
will be tested on all platforms.  It also attempts to subvert the
hack, testing that when you use `new_parser_from_tts`, the resulting
parser does not support reading embedded Idents.
std: Rename various slice traits for consistency

ImmutableVector -> ImmutableSlice
ImmutableEqVector -> ImmutableEqSlice
ImmutableOrdVector -> ImmutableOrdSlice
MutableVector -> MutableSlice
MutableVectorAllocating -> MutableSliceAllocating
MutableCloneableVector -> MutableCloneableSlice
MutableOrdVector -> MutableOrdSlice

These are all in the prelude so most code will not break.

[breaking-change]
std: Rename slice::Vector to Slice

This required some contortions because importing both raw::Slice
and slice::Slice makes rustc crash.

Since `Slice` is in the prelude, this renaming is unlikely to
casue breakage.

[breaking-change]
core: Rename ImmutableSlice::unsafe_ref to unsafe_get

Deprecate the previous.
core: Deprecate ImmutableSlice::tailn and initn

These are equivalent to slice_from and slice_to.
core: Rename MutableCloneableSlice::copy_from to clone_from_slice

Deprecate the previous.
collections: Deprecate Vec::tailn. Same as slice_from
core: Rename ImmutableEqSlice to ImmutablePartialEqSlice

This is in the prelude and won't break much code.

[breaking-change]