Added overview of the debuginfo module at the beginning of debuginfo.rs.
Fixed compiler warnings about unnecessary string allocations in debuginfo.rs
Reordered debuginfo.rs and commented public fns
debuginfo.rs: Removed some static constants not used anymore.
debuginfo.rs: Explained why a function is called although one could think it should not be.
debuginfo.rs: Removed trailing whitespace.
Make task_rng() return @mut R instead of @@mut R
iterator: Add `IteratorUtil::flat_map_` method

flat_map_ produces an iterator that maps each element to an iterator,
and yields the elements of the produced iterators.

This is the monadic bind :: M a -> (a -> M b) -> M b  for iterators.

Named just like the vec method, but with a trailing underline until the
method resolution bug is resolved.
great renaming propagation: syntax
Remove extra
Deny common lints by default for lib{std,extra}
Stop passing --disable-threads to LLVM
auto merge of #7365 : cmr/rust/syntax_cleanup, r=Aatch

Sets the stage for further cleanup (especially mass-slaughter of `@`)
Change finalize -> drop.
auto merge of #7269 : luqmana/rust/drop, r=thestinger

Finally rename finalize to drop.
Closes #4332.
auto merge of #7393 : alexcrichton/rust/enable-threads, r=catamorphism

Closes #7071
auto merge of #7113 : alexcrichton/rust/banned-warnings, r=cmr

Reopening of #7031, Closes #6963

I imagine though that this will bounce in bors once or twice... Because attributes can't be cfg(stage0)'d off, there's temporarily a lot of new stage0/stage1+ code.
auto merge of #7216 : kballard/rust/task_rng, r=brson
auto merge of #7255 : michaelwoerister/rust/debuginfo, r=jdm

This PR contains no real code changes. Just some documentation additions in the form of comments and some internal reordering of functions within debuginfo.rs.
driver: perform stripping before and after macro expansion.

This allows macros to both be conditionally defined, and expand
to items with #[cfg]'s.