build: install common.gypi along with headers

node-gyp requires this file
src: only access stack of non-null errors

Avoid segmentation fault when `null` is thrown
npm: Upgrade to v1.3.22
doc: Missing word 'are' in documentation

Fix simple spelling mistake in documentation.

fix #5808
deps: update gyp to 828ce09
build: add settings for VS 2013 to vcbuild.bat

Search for VS2013 compiler 1st, before falling back to older ones. This
allows compiling using the latest VS2013.
querystring: remove `name` from `stringify()`

QueryString.stringify() allowed a fourth argument that was used as a
conditional in the return value, but was undocumented, not used by core
and always was always false/undefiend. So the argument and conditional
have been removed.

Signed-off-by: Trevor Norris <trev.norris@gmail.com>
doc: Fix missing backtick in debugger doc
timers: setImmediate v8 optimization fix

Prevent v8 disabling optimization for scenario "bad value context for
arguments value".

Solves #6631

Signed-off-by: Trevor Norris <trev.norris@gmail.com>
deps: update gyp to 828ce09
Merge remote-tracking branch 'upstream/v0.10'
doc: Fix doc heading for 'response' event

Add colon to event heading to ensure it matches other events.

Fixes joyent/node#5687
cluster: report more errors to workers

Some errors for listening and binding to a socket were not properly
delivered to workers.

fix #6767
uv: Upgrade to v0.11.17
cluster: replace erroneous comma with semicolon
cluster: disconnect callback should always occur

Fixes issue in 0.11 where callback doesn't occur if worker count is
currently zero.  In 0.10 callback occurs after worker count is zero, and
occurs in next tick if worker count is currently zero.
cluster: only forcibly exit worker on unclean exit

Fix inadvertent v0.11 changes to the definition of suicide, particularly
the relationship between suicide state, the disconnect event, and when
exit should occur.

In v0.10, workers don't forcibly exit on disconnect, it doesn't give
them time to do a graceful finish of open client connections, they exit
under normal node rules - when there is nothing left to do. But on
unexpected disconnect they do exit so the workers aren't left around
after the master.

Note that a test as-written was invalid, it failed against the v0.10
cluster API, demonstrating that it was an undocumented API change.
cluster: do not synchronously emit 'setup' event

This is a problem present in both v0.10, and v0.11, where the 'setup'
event is synchronously emitted by `cluster.setupMaster()`, a mostly
harmless anti-pattern.
test: fix assumption of worker exit on disconnect

Master was disconnecting its workers as soon as they both started up.
Meanwhile, the workers were trying to listen. Its a race, sometimes the
disconnect would happen between when worker gets the response message,
and acks that message with a 'listening'. This worked OK after v0.11
introduced a behaviour where disconnect would always exit the worker,
but once that backwards-incompatible behaviour is removed, the worker
lives long enough to try and respond to the master, and child_process
errors at the attempt to send from a disconnected child.
test: fix test-cluster-eaccess to work on windows