build: fix misleading vcbuild.bat error message
windows: align uv_run code with unix
unix, windows: add uv_stop, stop running event loop
unix: make uv_stop work when embedded

* Make uv_stop() work when libuv is embedded in another event loop.

* Fix a small bug where loop->stop_flag was not reset when mode ==
  UV_RUN_ONCE or UV_RUN_NOWAIT. The next call to uv_run() would return
  immediately without doing any work.
windows: fix uv_stop in ONCE and NOWAIT modes

Same as the fix in 492efb9 but this time for uv-win.
test: don't rewind_cursor when using tap_output
windows: initialize stop_flag explicitly

The default loop lives in the bss section so it's zeroed on startup
but loops created with uv_loop_new() live on the heap and contain
random garbage. Initialize the stop_flag explicitly to avoid spurious
bugs.
unix, windows: add common uv_udp_* error checking
linux, darwin: don't touch environ in uv_setup_args

Don't overwrite the environment. On OS X, the entries in the environ
table are not necessarily adjacent. It's arguably also safer for setuid
binaries.

Fixes joyent/node#4847.
build, windows: allow override of python executable

Fixes #723.
test: remove 'is root?' check

I debug tests regularly as root (because dtrace and dtruss require the
additional privileges). The 'is root?' check gets in the way more often
than it prevents me from doing something silly. Remove it.
unix: make stream.c internal functions static
darwin: fix read from uninitialized struct kevent

In the OS X fallback code, don't read from the struct when the kevent()
syscall times out.
build: make clean target remove all build artifacts
build: add distclean target to out-of-tree builds
test: fix tap output check

Only report as an error when status != 0.

Stops the platform_output test from being reported as having failed
on Jenkins.
test: fix tap output even when ok but have output
build, windows: return an error code on failure
darwin: fix spurious uv_write2() segfault

We abuse uv_write2() to send over UDP handles to child processes.
Don't call uv__stream_fd() on those handles, it's a macro that on OS X
evaluates to a function that operates on a uv_stream_t with a couple of
OS X specific fields. On other Unices it does (handle)->io_watcher.fd,
which works but only by accident.

Fixes joyent/node#4870.
linux: make uv_cpu_info() handle absent procfs

Return an error when reading from /proc files fails because the procfs
isn't mounted.