Tests shouldn't read from stdin.

As far as I can tell, the only reason run-pass/type-use-i1-versus-i8
is trying to do a read is because that code was left over from the
original program the issue was found in.  When that test is run as
part of check-fast, and apparently only in that case, the test blocks
indefinitely, which is bad.
syntax: Allow 1-tuple expressions

This is for greater uniformity (for example, macros that generate
tuples). rustc already supported 1-tuple patterns, but there was no
way to construct a 1-tuple term.
Modernize bitv mut fields and explicit self
Change SmallBitv to use uint instead of u32
Remove the 'uint_bits' constant in bitv
Favor local closures instead of global functions
Implement Set container on top of a bit vector
Add benchmarks to measure differences in bit vectors
add missing typecheck for const pattern match arm

Issue #4968
Added rust convenience tool similar to go's go tool
Fixed a typo in the documentation that points to the wrong macro (ident_to_str -> stringify)
rustc: Less copy in trans, rs=removing copies
Attempt to solve make check test ambiguity betwen crate 'rust' and extratected doc 'rust'
rustc: For one-tuples, make parsing and printing the type work

and add a test to reflect-visit-data
auto merge of #5005 : alexcrichton/rust/bitv++, r=catamorphism

These commits take the old bitv implementation and modernize it with an explicit self, some minor touchups, and using what I think is some more recent patterns (like `::new` instead of `Type()`).

Additionally, this adds an implementation of `container::Set` on top of a bit vector to have as a set of `uint`s. I initially tried to parameterize the type for the set to be `T: NumCast` but I was hitting build problems in stage0 which I think means that it's not in a snapshot yet, so it's just hardcoded as a set of `uint`s now. In the future perhaps it could be parameterized. I'm not sure if it would really add anything, though, so maybe it's nicer to be hardcoded anyway.

I also added some extra methods to do normal bit vector operations on the set in-place, but these aren't a part of the `Set` trait right now. I haven't benchmarked any of these operations just yet, but I imagine that there's quite a lot of room for optimization here and there.
core: Fix BSD breakage, I hope
auto merge of #5010 : youknowone/rust/match_const_typecheck, r=catamorphism

Fix of issue #4968
Missing newline causing title to not be a title
auto merge of #5015 : mitsuhiko/rust/doc-fix-stringify, r=catamorphism

Fixed a typo in the documentation that points to the wrong macro.
auto merge of #5017 : catamorphism/rust/less-copy, r=catamorphism