Fix for make -j race from #9531 injected by cleanup in b1a22518f0c687db.
rustdoc: Don't emit redirect pages for variants/fields

It's just a waste of disk space and it can be done just as well in JS.
rustdoc: Fix searching for default methods

Closes #9566
rustdoc: Fix search for something on the same page
rustdoc: Include source files with documentation

All items have source links back to their actual code. Source files can be
omitted with the doc(html_no_source) attribute on the crate. Currently there is
no syntax highlighting, but that will come with syntax highlighting with all
other snippets.

Closes #2072
mk: Don't require pandoc to run rustdoc
rustdoc: Show type parameters on external paths

This removes the internal type representation of an `External` type and instead
relies on passing around DefId structures and interpreting them accordingly.

Progress on #9539, but there's still the problem of a crate => url mapping.
auto merge of #9577 : alexcrichton/rust/rustdoc, r=cmr

They're getting smaller each time though!

The highlight of this round is source files in documentation. Still trying to figure out the best syntax-highlighting solution.
tutorial: rewrite the sections on boxes/moves
auto merge of #9542 : pnkfelix/rust/fsk-fix-issue-9531, r=thestinger

r? strcat 

(please double check that it fixes things on your chroot, if possible, before approval)

Fix #9531
auto merge of #9589 : thestinger/rust/tutorial, r=alexcrichton
librustc: Don't pass around Session with @ and make building_library just bool instead of @mut bool.