gyp: preserve v8dbg syms on freebsd too
http: fix bailout for writeHead

Reported-by: Jackson Tian <shyvo1987@gmail.com>
Reviewed-by: Trevor Norris <trev.norris@gmail.com>
src: add missing Isolate arguments

Reviewed-by: Trevor Norris <trev.norris@gmail.com>
node: add missing Isolate::Scope at startup

Reviewed-by: Trevor Norris <trev.norris@gmail.com>
dns: throw if hostname is not string or falsey

Fix assertion failure from poor argument parsing logic introduced in
6ea5d16. Add tests to make sure arguments are properly parsed.

Fixes: 6ea5d16 "dns: always set variable family in lookup()"
Reviewed-by: Trevor Norris <trev.norris@gmail.com>
net,stream: add isPaused, don't read() when paused

net Sockets were calling read(0) to start reading, without
checking to see if they were paused first. This would result
in paused Socket objects keeping the event loop alive.

Fixes #8200

Reviewed-by: Trevor Norris <trev.norris@gmail.com>
http: avoid create difference hidden class

Reviewed-by: Trevor Norris <trev.norris@gmail.com>
crypto: fix memory leak in Connection::New

Do not create `SSL` instance twice, `SSL_new` is called from `SSLBase`
constructor anyway.

Reviewed-By: Fedor Indutny <fedor@indutny.com>
crypto: allow padding in RSA methods

Reviewed-By: Trevor Norris <trevnorris@gmail.com>
src: Add function name for .byteLength/.compare

Reviewed-By: Fedor Indutny <fedor@indutny.com>
cluster: centralize removal from workers list.

Currently, cluster workers can be removed from the workers list in three
different places:
- In the exit event handler for the worker process.
- In the disconnect event handler of the worker process.
- In the disconnect event handler of the cluster master.

However, handles for a given worker are cleaned up only in one of these
places: in the cluster master's disconnect event handler.

Because these events happen asynchronously, it is possible that the
workers list is empty before we even clean up one handle. This makes
the assert that makes sure that no handle is left when the workers
list is empty fail.

This commit removes the worker from the cluster.workers list only when
the worker is dead _and_ disconnected, at which point we're sure that
its associated handles are cleaned up.

Fixes #8191 and #8192.