make rustdoc more responsive

* move some sidebar contents to a title bar when small
* inline description toggle when small
* make out-of-band and in-band content share space, rather than float and clash
* compress wording of out-of-band content to avoid line-wrap as much as possible
libcollections: Fix RingBuf growth for non-power-of-two capacities
windows: Fix several tests on 64-bit.

Signed-off-by: Peter Atashian <retep998@gmail.com>
windows: Fix INVALID_HANDLE_VALUE
Made INVALID_HANDLE_VALUE actually a HANDLE.
Removed all useless casts during INVALID_HANDLE_VALUE comparisons.

Signed-off-by: Peter Atashian <retep998@gmail.com>
auto merge of #16336 : retep998/rust/master, r=brson

Several of the tests in `make check-fast` were failing so this fixes those tests.
auto merge of #16277 : Gankro/rust/responsive-docs, r=cmr

* move some sidebar contents to a title bar when small
* inline description toggle when small
* make out-of-band and in-band content share space, rather than float and clash
* compress wording of out-of-band content to avoid line-wrap as much as possible

## [Live Version Here](http://cg.scs.carleton.ca/~abeinges/doc/index.html)

Pages Of Interest:
* [Vec](http://cg.scs.carleton.ca/~abeinges/doc/std/vec/struct.Vec.html) (small path)
* [TreeSet](http://cg.scs.carleton.ca/~abeinges/doc/collections/treemap/struct.TreeSet.html) (long path)
* [std](http://cg.scs.carleton.ca/~abeinges/doc/std/index.html) (for stability dash)

TBD in a future PR is to convert links in the sidebar into a series of nest ul/li's, so that they can easily be moved to a drop-down in the new title bar. I think this is out of scope for this PR, but am willing to implement it now if desired.
auto merge of #16314 : Ryman/rust/ringbuf_non_pow2, r=huonw

See test for details.
librustc: Allow mutation of moved upvars.
librustc: Update unused mut lint to properly track moved upvars.
Add tests.
librustc: Don't use the same alloca for match binding which we reassign to in arm body.
librustc: Also use new alloca if matching on an arg or upvar which we reassign in the arm body.
librustc: Encode upvar_borrow_map in metadata.