librustc: Implement `#[no_main]`, which omits the entry point entirely.

Useful for SDL and possibly Android too.
Additional check in treemap iterator test.
Remove redundant print.
Implemented TreeMap::{lower_bound_iter,upper_bound_iter}

(issue #4604)
Fixed str::raw::push_byte

It was previously pushing the byte on top of the string's null
terminator. I added a test to make sure it doesn't break in the future.
fix warning still mentioning the `again` keyword
Implemented iterator for TrieMap

Closes #5506.
Remove debug printing.
Open files in binary mode. Closes #3948
std: Fix newsched logging truncation

The truncation needs to be done in the console logger in order
to catch all the logging output, and because truncation only matters
when outputting to the console.
std::rt: Schedule more scheduler callbacks to avoid dropping messages
auto merge of #8299 : brson/rust/yet-more-newsched-fixes, r=brson
std::rt: Use magic to make TLS work from annihilated boxes. #8302
auto merge of #8303 : brson/rust/tls-magic-wtf, r=brson
Add extra::arena::Arena::new{, _with_size}.

Signed-off-by: OGINO Masanori <masanori.ogino@gmail.com>
auto merge of #8227 : dim-an/rust/tree-iter, r=thestinger
auto merge of #8279 : pcwalton/rust/no-main, r=brson

Useful for SDL and possibly Android too.

r? @brson
auto merge of #8183 : omasanori/rust/migrate-new, r=sanxiyn

It seems that relatively new code uses `Foo::new()` instead of `Foo()` so I wrote a patch to migrate some structs to the former style.
Is it a right direction? If there are any guidelines not to use new()-style, could you add them to the [style guide](https://github.com/omasanori/rust/wiki/Note-style-guide)?
auto merge of #8289 : sfackler/rust/push_byte, r=erickt

It was previously pushing the byte on top of the string's null
terminator. I added a test to make sure it doesn't break in the future.
auto merge of #8292 : thestinger/rust/fix_loop_warning, r=brson