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.
Merge branch 'master' of github.com:mozilla/rust