core::rt: Don't abort when reporting an unknown uv error
core: Turn task::unkillable, etc. into no-ops in newsched. #6377

Not necessary just yet but they make ARC not work.
core::rt: Begin implementing Reader extension methods
core::rt: `read` raises `read_error`
core::rt: Add uv timer bindings
core::rt: Fix scheduling logic for enqueued tasks
rt: Rename sched_key to rt_key

It is more general-purpose than holding scheduler pointers
core::rt: Rename Sched.task_queue to work_queue
core::rt: Rename Task to Coroutine
core::rt: Warnings
core::rt: Make push_bytes raise read_error on EOF
core::rt: More work on Reader extensions and error handling
core::rt: Copy many of the old io extensions to the new io

Some resolve problem is keeping the tests from working
core::rt: Fix TCP test on mac
Merge remote-tracking branch 'brson/io' into incoming
auto merge of #6498 : thestinger/rust/deep_clone, r=thestinger

This is mostly for `std::rc` and `std::arc` (but I haven't implemented it for ARC yet).

Implementing it correctly for managed boxes is *very* non-trivial. It would probably require an unholy mix of reflection and TLS.
add a Clone impl for borrowed pointers
auto merge of #6418 : catamorphism/rust/rustpkg, r=catamorphism

r? @brson This patch implements package IDs like
github.com/catamorphism/test-pkg.

To support such package IDs, I changed the PkgId struct to contain
a LocalPath and a RemotePath field, where the RemotePath reflects
the actual URL and the LocalPath reflects the file name of the cached
copy. Right now, the only difference is that the local path doesn't
contain dashes, but this will change when we implement #6407.

Also, PkgIds now have a short_name field -- though the short name
can be derived from the LocalPath, I thought it was cleaner not to
call option::get() wantonly.
core::rt: Unignore a fixed TCP test
auto merge of #6499 : dotdash/rust/static_keywords, r=thestinger