std::rand: remove the `fn main()` from the examples.
std::hashmap: add an example to mangle.
rustc: Fix a borrow failure in `.ln_str()`

`ln_str` caused ICE if `RUST_LOG=rustc::middle::liveness` is given
due to borrow failure.
Add docs for more crates
Update bundled gyp

Closes #11152
Guard a maybe_yield in Chan with can_resched

I forgot to add this back in after I removed can_resched and then realized I had
to add it back.
auto merge of #11175 : klutzy/rust/ice, r=alexcrichton

`ln_str` caused ICE if `RUST_LOG=rustc::middle::liveness` is given
due to borrow failure.
std::hashmap: add an example with the basic methods.
auto merge of #11150 : huonw/rust/moar-docs, r=alexcrichton

(I removed the `fn main` from the `std::rand` examples to make it consistent with the rest of the codebase.)
auto merge of #11179 : alexcrichton/rust/update-gyp, r=cmr

Closes #11152
auto merge of #11180 : alexcrichton/rust/fix-deferred-send, r=cmr

I forgot to add this back in after I removed can_resched and then realized I had
to add it back.
Add a compiler-docs target
Fix rustdoc bug involving PatLit
auto merge of #11177 : cmr/rust/native_and_green_docs, r=alexcrichton

Some people have requested this, and I think it's quite useful to have
documentation for the compiler libraries. libnative and libgreen are
self-explanatory I think.
Rename pkgid variables
Rename PkgId to CrateId
Rename uses of PkgId to CrateId in librustpkg
Update Docs to use crateid