Add a doctest for the std::string::as_string method.

Change Example to Examples.

Add a doctest that better demonstrates the utility of as_string.

Update the doctest example to use String instead of &String.
Clean up `libcollections::VecMap`

- Introduce a named type for the return type of `VecMap::move_iter`
- Rename all type parameters to `V` for "Value".
- Remove unnecessary call to an `Option::unwrap`, use pattern matching instead.
- Remove incorrect `Hash` implementation which took the `VecMap`'s capacity
  into account.

This is a [breaking-change], however whoever used the `Hash` implementation
relied on an incorrect implementation.
rollup merge of #19576: nhoss2/master

There was a link to a non existing guide
rollup merge of #19577: aidancully/master

pthread_key_create can be 0.
addresses issue #19567.
rollup merge of #19581: luqmana/duc

Fixes #19575.
rollup merge of #19584: CaptainHayashi/patch-1

Substitutes 'lifetime' for 'liftime' in a few places.

Apologies if this has already been noticed/PRQed!  I did try to do due diligence, though :grinning:
rollup merge of #19585: mdinger/guide_typo

@steveklabnik r?
rollup merge of #19587: huonw/closure-feature-gate

detect UFCS drop and allow UFCS methods to have explicit type parameters.

Work towards #18875.

Since code could previously call the methods & implement the traits
manually, this is a

[breaking-change]

Closes #19586. Closes #19375.
rollup merge of #19588: nodakai/libstd-fix-zombie-children-finder

Reported as a part of rust-lang/rust#19120

The logic of rust-lang/rust@74fb798a200dc82cf5b4a18065e3ea565229adc3 was
flawed because when a CI tool run the test parallely with other tasks,
they all belong to a single session family and the test may pick up
irrelevant zombie processes before they are reaped by the CI tool
depending on timing.
rollup merge of #19589: huonw/unboxed-closure-elision

This means that `Fn(&A) -> (&B, &C)` is equivalent to `for<'a> Fn(&'a A)
-> (&'a B, &'a C)` similar to the lifetime elision of lower-case `fn` in
types and declarations.

Closes #18992.
rollup merge of #19592: jbranchaud/add-btreemap-iter-doctest

I'm interested in including doctests for `BTreeMap`'s `iter_mut` and `into_iter` methods in this PR as well, but I am not sure of the best way to demonstrate/test what they do for the doctests.
rollup merge of #19594: Arcterus/master

It is useful to have configurable newlines in base64 as the standard
leaves that for the implementation to decide.  GNU `base64` apparently
uses LF, which meant in `uutils` we had to manually convert the CRLF to
LF.  This made the program very slow for large inputs.

[breaking-change]
rollup merge of #19598: japaric/ord

cc #18755

r? @alexcrichton
cc @bjz
rollup merge of #19604: vadimcn/gcc-less

- Support gcc-less installation on Windows.  To do so in unattended mode run:`<intaller>.exe /TYPE=compact /SILENT`.
- Do not require admin privileges to install.

cc #19519
rollup merge of #19608: jbranchaud/add-missing-semicolon-in-intro
rollup merge of #19614: steveklabnik/gh19599

Fixes #19599
rollup merge of #19615: steveklabnik/gh19595

Fixes #19595.
rollup merge of #19616: steveklabnik/gh19556

Closes #19556.
rollup merge of #19620: retep998/memorymap
rollup merge of #19622: steveklabnik/fix_ringbuf_doc

  https://botbot.me/mozilla/rust/2014-12-07/?msg=27003846&page=20