doc: grammar fix
Add doctests for `iter_mut` and `into_iter` of BTreeMap.

Add spacing as dictated by standard rust code style.
Remove references to traits that no longer exist

This specifically means:
- `Deque`
- `Map`
- `Set`
Update sample code to use `getopts::usage` in `print_usage`
Fix an ICE when trying to resolve a struct variant

Unlike a tuple variant constructor which can be called as a function, a
struct variant constructor is not a function, so cannot be called.

If the user tries to assign the constructor to a variable, an ICE
occurs, because there is no way to use it later. So we should stop the
constructor from being used like that.

A similar mechanism already exists for a normal struct, as it prohibits
a struct from being resolved. This commit does the same for a struct
variant.

This commit also includes some changes to the existing tests.

Fixes #19452.
Change default installation directory to %SYSTEMDRIVE%\Rust.
Modify user PATH, rather than system PATH.
auto merge of #19671 : tbu-/rust/pr_doc_removetraitrefs, r=Gankro

This specifically means:
- `Deque`
- `Map`
- `Set`
Separate borrowck into its own crate and remove dead code as well.
auto merge of #19685 : jbranchaud/rust/add-btreemap-iter-doctests, r=Gankro
auto merge of #19695 : arthurtw/rust/master, r=steveklabnik
Revamped testing guide
auto merge of #19627 : steveklabnik/rust/testing_guide, r=cmr
auto merge of #19582 : nikomatsakis/rust/crateification, r=alexcrichton

r? @alexcrichton
libcore: use unboxed closures in `Option` methods
librustc_trans: fix fallout
Fix compile fail tests
libcore: use unboxed closures in `Result` methods
libcore: use unboxed closures in the fields of `Map`
libcollections: fix fallout
librustrt: fix fallout