Update doc URLs for version bump
Bump version to 0.12.0-pre
unicode: Remove crate_id attr
rustdoc: support tuple and struct patterns in function arguments
rustdoc: render 1-tuples as (T,) instead of (T)
mark std::hash experimental

The `hash` module was not included in an earlier pass that sets baseline
stability of modules within `std` to `experimental`.
Fix spans for attributes

They used to be one token too long, so you'd see things like
```
rust/rust/test.rs:1:1: 2:2 warning: unused attribute,
rust/rust/test.rs:1 #![foo]
rust/rust/test.rs:2 #![bar]
```
instead of
```
test.rs:1:1: 1:8 warning: unused attribute, #[warn(unused_attribute)] on
by default
test.rs:1 #![foo]
          ^~~~~~~
```
auto merge of #15610 : brson/rust/0.12.0, r=alexcrichton
auto merge of #15613 : cmr/rust/rustdoc-arg-patterns, r=alexcrichton
auto merge of #15617 : aturon/rust/std-more-experimental, r=alexcrichton

The `hash` module was not included in an earlier pass that sets baseline
stability of modules within `std` to `experimental`.
auto merge of #15614 : lucidd/rust/#15474, r=alexcrichton

This fixes #15474
auto merge of #15621 : sfackler/rust/attr-span, r=cmr

They used to be one token too long, so you'd see things like
```
rust/rust/test.rs:1:1: 2:2 warning: unused attribute,
rust/rust/test.rs:1 #![foo]
rust/rust/test.rs:2 #![bar]
```
instead of
```
test.rs:1:1: 1:8 warning: unused attribute, #[warn(unused_attribute)] on
by default
test.rs:1 #![foo]
          ^~~~~~~
```