Gate default type parameter overrides.
Fixes #12423.
std: minor whitespace cleanup
replace manual Hash impls with `#[deriving(Hash)]`
test: Use `#[deriving(Hash)]` in a couple tests
rustc: rename `hash` to the proper name `state`
Remove std::bool::{Bool, all_values}

These were never used outside of the tests
auto merge of #12473 : bjz/rust/remove-bool, r=alexcrichton

These were never used outside of the tests.
auto merge of #12525 : eddyb/rust/gate-default-type-param-usage, r=alexcrichton

Also reverted `#[deriving(Hash)]` to implement `Hash` only for `SipState`, until we decide what to do about default type params.
auto merge of #12522 : erickt/rust/hash, r=alexcrichton

This patch series does a couple things:

* replaces manual `Hash` implementations with `#[deriving(Hash)]`
* adds `Hash` back to `std::prelude`
* minor cleanup of whitespace and variable names.
auto merge of #12530 : alexcrichton/rust/make-check-no-rpath, r=brson

This involves passing through LD_LIBRARY_PATH through more places, specifically
in the compiletest, run-make, and doctest runners.
test: Clean out the test suite a bit

This updates a number of ignore-test tests, and removes a few completely
outdated tests due to the feature being tested no longer being supported.

This brings a number of bench/shootout tests up to date so they're compiling
again. I make no claims to the performance of these benchmarks, it's just nice
to not have bitrotted code.

Closes #2604
Closes #9407