deps: upgrade libuv to 3ee4d3f
src: add libuv bindings module

Exports:

* all UV_E* error codes
* a uv_err_name() binding
src, lib: deduplicate errnoException
src, lib: update after internal api change

Libuv now returns errors directly.  Make everything in src/ and lib/
follow suit.

The changes to lib/ are not strictly necessary but they remove the need
for the abominations that are process._errno and node::SetErrno().
test: fix up tests after internal api change
bench: fix up benchmarks after internal api change