@isaacs can you help me see what's going on here? might be because it's 3am, but can't see why the above code is throwing the following from the `isDirectory` test from `test/simple/test-domain.js`:
```
node: ../src/node.cc:992: Handle<v8::Value>
node::MakeCallback(const Handle<v8::Object>, const Handle<v8::String>, int, Handle<v8::Value> *):
  Assertion `!domain.IsEmpty()' failed. Command: out/Release/node /var/projects/node/test/simple/test-domain.js
```
But it works fine if I just pass everything to `_makeCallback()`.

Basically what's happening is an empty object is being passed to `MakeCallback` so the `->Has()` check passes. It's like the timing of execution is off so the domain gets cleared out.