Update rustdoc testing to test all code blocks

It's too easy to forget the `rust` tag to have a code example tested, and it's
far more common to have testable code than untestable code.

This alters rustdoc to have only two directives, `ignore` and `should_fail`. The
`ignore` directive ignores the code block entirely, and the `should_fail`
directive has been fixed to only fail the test if the code execution fails, not
also compilation.
Fix all code examples
Add a method to LimitReader to return the limit

This is useful in contexts like this:

let size = rdr.read_be_i32() as uint;
let mut limit = LimitReader::new(rdr.by_ref(), size);
let thing = read_a_thing(&mut limit);
assert!(limit.limit() == 0);
Add test and close #8893
Silence some unused import warnings
Correctly reset steals when hitting MAX_STEALS

The previous code erroneously assumed that 'steals > cnt' was always true, but
that was a false assumption. The code was altered to decrement steals to a
minimum of 0 instead of taking all of cnt into account.

I didn't include the exact test from #12295 because it could run for quite
awhile, and instead set the threshold for MAX_STEALS to much lower during
testing. I found that this triggered the old bug quite frequently when running
without this fix.

Closes #12295
auto merge of #12298 : alexcrichton/rust/rustdoc-testing, r=sfackler

It's too easy to forget the `rust` tag to test something.

Closes #11698
mk: Remove old flags to llc for arm.
auto merge of #12299 : sfackler/rust/limit-return, r=alexcrichton

This is useful in contexts like this:

```rust
let size = rdr.read_be_i32() as uint;
let mut limit = LimitReader::new(rdr.by_ref(), size);
let thing = read_a_thing(&mut limit);
assert!(limit.limit() == 0);
```
auto merge of #12305 : luqmana/rust/ub, r=sfackler

These are no longer valid options as of the recent llvm upgrade.
auto merge of #12301 : FlaPer87/rust/issue-8893, r=alexcrichton
mk: Remove check-notidy, check-full, check-test

Mostly useless
mk: Fix typo, NO_MAKEFILE_DEPS -> NO_MKFILE_DEPS
auto merge of #12302 : alexcrichton/rust/issue-12295, r=brson

The previous code erroneously assumed that 'steals > cnt' was always true, but
that was a false assumption. The code was altered to decrement steals to a
minimum of 0 instead of taking all of cnt into account.

I didn't include the exact test from #12295 because it could run for quite
awhile, and instead set the threshold for MAX_STEALS to much lower during
testing. I found that this triggered the old bug quite frequently when running
without this fix.

Closes #12295
Implement Show for 1-12 element tuples
Delegate ToStr implementation to Show for tuples
auto merge of #12310 : brson/rust/mkfilecleanup, r=sfackler

Two small fixes
Merge ImmutableTuple* traits into their respective Tuple* trait
Improve naming of tuple getters, and add mutable tuple getter

Renames the `n*` and `n*_ref` tuple getters to `val*` and `ref*` respectively, and adds `mut*` getters.
Remove CloneableTuple and ImmutableTuple traits

These are adequately covered by the Tuple2 trait.