test: fix up internet/test-dns after api change

* The test calls an internal API that changed in commit ca9eb71.

* Trying to reverse-lookup a bogus hostname now returns EINVAL rather
  than the (bogus!) status code ENOTIMP.
cares_wrap: don't set oncomplete property from c++

Don't set the oncomplete property in src/cares_wrap.cc, we can do it
just as easily in lib/dns.js.

Switch two closures to the 'function with _this_ object' model. Makes
it impossible for an overzealous closure to capture too much context
and accidentally hold on to too much memory.
cares_wrap: remove unused function getHostByName()

Hasn't been used in ages. Also remove its (already disabled) test.
src: centralize class wrap/unwrap

While almost all cases were handled by simple WRAP/UNWRAP macros, this
extends those to cover all known occurrences.
src: don't obj->Set(Integer::New(...), val)

Don't create an Integer when setting a numeric index on an object or an
array, use the version of v8::Object::Set() that takes an uint32_t.

Change the types of the variables from int to uint32_t and clean up
some code consistency issues while we're here.
src: fix build break from generic macro name

WRAP is too generic a macro name and causes the build to fail from
conflicts. They have been prepended with NODE_.
crypto: remove two unused static variables
util: fix isPrimitive check

Previous check failed for the edge case Object.create(null). This uses
the current v8 code for the check.
crypto: use consistent variable names

Code cleanup: don't call a Connection object `p` in some places, `c` in
other places and `ss` in yet other places. Let's just call it `conn`.

This also fixes about a million style errors in one fell swoop.
crypto: use consistent conn object unwrapping

We use `Foo:Unwrap(args.This())` everywhere else, let's use the same
idiom for Connection::Unwrap().