Implement Stream automatically for Reader + Writer

This is consistent with the existing documentation but was not the
actual behaviour, which I've found to be rather a nuisance, actually.
Add a from_str function that calls out to the associated method on the trait
Add from_str docs
Add an ``unreachable!()`` macro.

Rationale: having a function which fails means that the location of
failure which is output is that of the unreachable() function, rather
than the caller.

This is part of #8991 but is not all of it; current usage of
``std::util::unreachable()`` must remain so for the moment, until a new
snapshot is made; then I will remove that function entirely in favour of
using this macro.
Remove the __log function for __log_level

Also redefine all of the standard logging macros to use more rust code instead
of custom LLVM translation code. This makes them a bit easier to understand, but
also more flexibile for future types of logging.

Additionally, this commit removes the LogType language item in preparation for
changing how logging is performed.
Factor shared code out into default GenericPath methods.
Minor doc cleanup.
Rename str::from_bytes to str::from_utf8, closes #8985
auto merge of #8984 : chris-morgan/rust/auto-stream-impl, r=huonw

This is consistent with the existing documentation but was not the
actual behaviour, which I've found to be rather a nuisance, actually.
Replace os::glob with extra::glob, which is written in rust,
fixing issue #6100.
auto merge of #8992 : chris-morgan/rust/unreachable-macro, r=brson

Rationale: having a function which fails means that the location of
failure which is output is that of the unreachable() function, rather
than the caller.

This is part of #8991 but is not all of it; current usage of
``std::util::unreachable()`` must remain so for the moment, until a new
snapshot is made; then I will remove that function entirely in favour of
using this macro.
std::rt: Some I/O cleanup
std::rt: Add libuv bindings for getaddrinfo
std::rt: Add get_host_addresses function

This is a very simplistic method for host name resolution. It converts
a host name to a vector of IP addresses. Should be enough to get started.
auto merge of #8997 : fhahn/rust/issue_8985, r=catamorphism,brson

Patch for #8985
std: Remove push_fast from OwnedVector. Closes #8769

This is an unsafe implementation detail of `push`.
extra: Don't overcommit test tasks. Closes #8660

The new scheduler makes better use of threads than the old.
auto merge of #9004 : brson/rust/issue-8660, r=thestinger

The new scheduler makes better use of threads than the old.
Fix glitches with struct field aligned indents
Don't run lint over gyp files (they just fail anyway)