Change static.rust-lang.org to doc.rust-lang.org

The new documentation site has shorter urls, gzip'd content, and index.html
redirecting functionality.
doc: Fix some broken links
doc: Touch up the unsafe guide

* Change ~ references to Box
* Rewrite examples so they can be compiled an run
* Mention libcore
* Update wording about compiler-required functions
auto merge of #14348 : alexcrichton/rust/doc.rust-lang.org, r=huonw
Move std::{reflect,repr,Poly} to a libdebug crate

This commit moves reflection (as well as the {:?} format modifier) to a new
libdebug crate, all of which is marked experimental.

This is a breaking change because it now requires the debug crate to be
explicitly linked if the :? format qualifier is used. This means that any code
using this feature will have to add `extern crate debug;` to the top of the
crate. Any code relying on reflection will also need to do this.

Closes #12019

[breaking-change]