doc: dgram: reword dgram.Socket#send() docs

Make it clear that the address argument is not really optional and fix
some Engrish and long lines while we're here.

Fixes #6433.
test: fix tls-client-reject after ba7c9ce96
node: add AsyncListener support

AsyncListener is a JS API that works in tandem with the AsyncWrap class
to allow the user to be alerted to key events in the life cycle of an
asynchronous event. The AsyncWrap class has its own MakeCallback
implementation that core will be migrated to use, and uses state sharing
techniques to allow quicker communication between JS and C++ whether the
async event callbacks need to be called.
async-wrap: integrate with WeakObject

Making WeakObject inherit from AsyncWrap allows us to peak into almost
all the MakeCallback calls in Node internals.
async-wrap: add methods to udp/tcp/pipe/timers

Now it's possible to add/remove an async listener to an individual
handle created by UDP, TCP, Pipe or Timer.
crypto: convert RandomBytesRequest to a class

Since RandomBytesRequest makes a call to MakeCallback, needed it to be
a class so AsyncWrap could handle any async listeners.

Also added a simple test for an issue had during implementation where
the memory was being released and returned.
crypto: convert pbkdf2_req to a class

pbkdf2_req has been renamed to PBKDF2Request and converted to a class.
It now uses AsyncWrap::MakeCallback.

Also includes, using env()->ondone_string() instead of "ondone" and
using malloc instead of new char[].
cares: add AsyncListener support
domain: use AsyncListener API

The domain module has been switched over to use the domain module API as
much as currently possible. There are still some hooks in the
EventEmitter, but hopefully we can remove those in the future.
test: add additional async listener tests
doc: add docs for AsyncListeners

Documentation has been added on how to use the AsyncListener API.
benchmark: add http chunked encoding benchmarks

Test both "Content-Length: xxx" and "Transfer-Encoding: chunked" responses in
the http/simple benchmark.
test: fix async listener test for windows
tls: add ECDH ciphers support

Switch test fixtures to 1024 bit keys.
blog: Post for v0.11.8
doc: document node signal handling

Partly lifted from uv.h, partly from observation of node.cc.
doc: Correct and add several items

Several names/urls were out of date, and some really
awesome stuff was missing.
src: squelch unused variable warning

|i| and |j| arent't used when building without crypto support.  Hat tip
to Brian White.

Rename |l| to |k| while we're here because it's quite hard to discern
from |i| or |j| with some fonts.
http: make DELETE requests set `req.method`

Fixes #6461.
src: fix whitespace/braces lint error from 962686b

Silly warning.  One day I'll probably remove it altogether, see if I
don't.