Update to the latest libuv

At this time, also point the libuv submodule to the official repo instead of my
own off to the side.

Closes #10246
Closes #10329
Don't dup the stdio file handles

It turns out that libuv no longer closes these handles when the corresponding
TTY instance is closed, so there's no reason for us to dup these file handles.
Yay!
Another round of test fixes from previous commits
Carefully destroy channels at the right time.

When a channel is destroyed, it may attempt scheduler operations which could
move a task off of it's I/O scheduler. This is obviously a bad interaction, and
some finesse is required to make it work (making destructors run at the right
time).

Closes #10375
Fix usage of libuv for windows