Windows: map ERROR_NOT_SAME_DEVICE to UV_EXDEV
Merge branch 'v0.6'
err: handle EIO errors on win/unix
unix: map `EROFS` to `UV_EROFS`

Conflicts:

	src/unix/error.c
windows: map ERROR_WRITE_PROTECT to UV_EROFS
Merge branch 'v0.6'
Windows: we're out of handle flags - arrange them more efficiently
Windows: fetch pointer for CancelIoEx on startup
Windows: add uv_msafd_poll, to support overlapped socket polling
linux: fix build error with old kernel headers

O_CLOEXEC was introduced in linux 2.6.23, don't assume it's available.

Fixes #400.
Unix: namespace stream handle flags
Api for polling external sockets
Windows: implement uv_poll
Unix: implement uv_poll
Test: add tests for uv_poll
Benchmarks: add size of uv_poll_t to benchmark-sizes
Rename uv_platform_socket_t to uv_os_sock_t
Merge branch 'poll'

Closes: #316, #401
Ref: #265, #349
unix: change uv_dl*() error code

Return UV_ENOENT instead of UV_EINVAL. UV_EINVAL was arbitrarily chosen and
turns out to be inconsistent with the Windows implementation.

Fixes #395.
unix, win: rework uv_dlopen() API