Add a variant of home_for_io that consumes the handle. Refactor out common parts of the home_for_io variants.
Split out starting a listener from accepting incoming connections.

The Listener trait takes two type parameters, the type of connection and the type of Acceptor,
and specifies only one method, listen, which consumes the listener and produces an Acceptor.

The Acceptor trait takes one type parameter, the type of connection, and defines two methods.
The accept() method waits for an incoming connection attempt and returns the result.
The incoming() method creates an iterator over incoming connections and is a default method.

Example:

let listener = TcpListener.bind(addr); // Bind to a socket
let acceptor = listener.listen(); // Start the listener
for stream in acceptor.incoming() {
    // Process incoming connections forever (or until you break out of the loop)
}
Add tests for ref in closure parameter list, closes #5239
Added libstd and libextra unit tests to check-fast target.
Fixed MemoryMap on Windows.
Disabled failing parts of abs_sub() and frexp() unit tests on Windows.
Turned off libstd unit tests that currently fail on Windows.
src/test/bench: restructure
Teach compiletest to use multiple --src-base's
Teach the makefile to use multiple src-base's
Remove --newrt option
Android: Pass the environment when running tests
rust-mode: Default rust-indent-offset to 4, not default-tab-width

default-tab-width is standardly 8, but most programmers and style
guides prefer an indentation width smaller than that.  Rust itself
uses 4 space indents.  Most other Emacs modes define the indentation
width as 4 or 2 spaces, independently of the width of a Tab character.
Depending on default-tab-width makes especially little sense for
rust-mode because it sets indent-tabs-mode to nil.

Signed-off-by: Anders Kaseorg <andersk@mit.edu>
Make the unit-test framework check RUST_TEST_TASKS over RUST_THREADS.

Fixes #7335.
Revert "auto merge of #8695 : thestinger/rust/build, r=pcwalton"

This reverts commit 2c0f9bd35493def5e23f0f43ddeba54da9d788b4, reversing
changes made to f8c4f0ea9c96218dbc81081799e77875fbb071de.

Conflicts:
	src/rustllvm/RustWrapper.cpp
auto merge of #8800 : fhahn/rust/ticket_5239, r=alexcrichton

I've added a test for the second example mentioned in #5239. The first example does not compile with a reasonable error message. Should I add a compile-fail test for that example as well?

    /rust/src/test/run-pass/issue-5239.rs:15:45: 15:51 error: binary operation + cannot be applied to type `&int`
    rust/src/test/run-pass/issue-5239.rs:15     let _f = |ref x: int| { x += 1};
                                                                                         ^~~~~~

    error: aborting due to previous error
Update libuv to rebase on top of joyent/master

Closes #8829
Enable segmented stacks for llvm on mingw-64

cc #8488
Remove the iter module.

Moves the Times trait to num while the question of whether it should
exist at all gets hashed out as a completely separate question.
Remove @io::Writer from sys/repr/reflect

At the same time, this updates the TyVisitor to use a mutable self because it's
probably going to be mutating state as it goes along anyway.