Spawn new tasks onto the primary scheduler by default. #3760
Add at_exit function #4450
core: Add private global data interface. #3915
Add `finally` method for deferred execution
core: Add new weak task API
core: Convert getenv/setenv to use a mutex

This much simpler implementation uses a global mutex
and eliminates the kernel environment channel.
std: Convert uv_global_loop to use pipes
core: Remove private::chan_from_global_ptr. #3915
Remove old comm-based weak task interface
core: Stop using oldcomm
Stop using oldcomm in uv_global_loop tests
Merge remote-tracking branch 'brson/nocommupstream'

Conflicts:
	src/libcore/private.rs
	src/libcore/task/mod.rs
	src/libcore/task/spawn.rs
	src/libstd/net_tcp.rs
	src/libstd/uv_global_loop.rs
	src/libstd/uv_iotask.rs
Merge remote-tracking branch 'brson/nocommupstream2'
std: implement lexicographical Ord for TreeMap/TreeSet
Link the lifetimes of regions resulting from borrows of the
contents of other borrowed pointers to the lifetimes of the
borrowed value.  Fixes #3148.

r=catamorphism
Integrate vec patterns into borrow checker.

The tail portion of the pattern effectively borrows a vector,
but the borrow checker knew nothing about this.

r=catamorphism
Detect "// WARN" in tidy and print out, well, a warning!  Useful
for notating FIXME-style-situations that you want to be reminded
of before you commit.

r=catamorphism
Make tidy actually work

r=catamorphism
Extend region guarantor logic to handle autoref, which will
be necessary for reborrowing.

r=catamorphism
Remove bounds from type decl of smallintmap

r=brson