Gate default type parameter overrides #12423

Also reverted `#[deriving(Hash)]` to implement `Hash` only for `SipState`, until we decide what to do about default type params.
Fixes #12423.