2013.09.05, Version 0.11.13 (Unstable)

Changes since version 0.11.12:

* unix: define _GNU_SOURCE, exposes glibc-isms (Ben Noordhuis)

* windows: check for nonconforming swprintf arguments (Brent Cook)

* build: include internal headers in source list (Brent Cook)

* include: merge uv_tcp_bind and uv_tcp_bind6 (Ben Noordhuis)

* include: merge uv_tcp_connect and uv_tcp_connect6 (Ben Noordhuis)

* include: merge uv_udp_bind and uv_udp_bind6 (Ben Noordhuis)

* include: merge uv_udp_send and uv_udp_send6 (Ben Noordhuis)
Now working on v0.11.14
windows/fs: wrap multi-statement macros in do..while block
windows/fs: make uv_fs_open() report EINVAL correctly

Before, when the user passed an invalid paramter to uv_fs_open, libuv
would detect this and call SET_REQ_RESULT to set the result value to -1.
SET_REQ_RESULT then stored whatever error code was returned by
GetLastError(), which would have no relationship to the actual problem,
and might as well be zero.
windows/fs: handle _open_osfhandle() failure correctly

Until now we assumed that _open_osfhandle() would set _doserrno on
failure. This assumption was very wrong in one obvious case, namely when
the CRT file descriptor table would fill up. In that case errno is set
to EMFILE, but GetLastError() returns zero - which makes sense because
it's not a win32 error but rather a CRT problem.
build: clarify instructions for Windows

Clarified up front that Python must be installed for all Windows builds
and it must be in the path. Simplified the Windows instructions by
removing the redundant msbuild guidance.

Also added subheadings for each unique build environment.
windows: run close callbacks after polling for i/o

Makes the uv-win behavior compatible with uv-unix.

Fixes #796.
include: clarify uv_tcp_bind() behavior

On BSD-like platforms, EADDRINUSE is returned by the bind() system call.
On other platforms, it's returned by the listen() system call.

In other words, some platforms are 'first to bind wins', others are
'first to listen wins' - but only with TCP sockets: UNIX domain sockets
always return EADDRINUSE from the bind() system call, UDP sockets don't
call listen() in the first place.

Fixes #769.
include: clean up includes in uv.h

* size_t is defined in <stddef.h>, not <sys/types.h>

* Simplify the platform check.
include: remove UV_IO_PRIVATE_FIELDS macro

It's an alias for UV_IO_PRIVATE_PLATFORM_FIELDS.  Remove the macro and
use UV_IO_PRIVATE_PLATFORM_FIELDS directly.
include: fix typo in comment in uv.h
include: update uv_is_active() documentation

Seems to have been overlooked in the reference counting refactor back
in May 2012 in commit 9efa8b3.  Clarify what "active" means for
different kinds of handles.
include: make uv_process_options_t.cwd const

There is no reason for it to be non-const, libuv treats it as a
read-only input.  Make it a pointer to a const string.
test: wrap long lines at 80 columns
unix: wrap long lines at 80 columns
unix, windows: make uv_is_*() always return 0 or 1

Ensure that the following API functions always return either 0 or 1:

  * uv_is_active()
  * uv_is_closing()
  * uv_is_readable()
  * uv_is_writable()