Add comments with type annotations.

This will hopefully help people with their first steps in Rust.

Fixes #16143.
Use rust-installer for installation

This is just a refactoring of the current installer so that Rust and Cargo
use the same codebase.

cc #16456
serialize: Avoid stray nul characters when auto-serializing char.

Fixes #19719.
Add coercions from *mut to *const and from &mut to *const.
rustc: Don't panic on corrupt metadata

Fix a panic where the compiler was looking at stale or old metadata.

See #19798, #19772, #19757, #19744, #19718, #19691.
Make BTree's Handle system more generic and more powerful, removing some runtine checks in favor of newly gained static safety
Windows dbghelp strips leading underscores from symbols, so let's accept "ZN...E" form too.
Also, print PC displacement from symbols.
syntax/ast_util: add `is_by_value_binop()`
Tell typeck which binops are by value
Tell trans which binops are by value
Tell expr_use_visitor which binops are by value
Tell regionck which binops are by value
libcore: convert binop traits to by value
libcore: fix move semantics fallout
libcollections: Vec<T> + &[T]
libcollections: String + &str
libcollections: make `EnumSet` binops by value
libstd: convert `BitFlags` binops to by value
libstd: convert `Duration` binops to by value
libtime: convert `Timespec` binops to by value