util: pass opts to custom inspect functions

Objects with custom inpsect functions should get the options that were
passed to `util.inspect()`

fixes #5822
fixes #6098
buffer: fix regression in Buffer(buf) constructor

Commit 3a2f273b got the source and the target wrong when copying over
the data. Fix that and add a regression test.

Fixes #6111.
vm: remove unnecessary Persistent<FunctionTemplate>
vm: fix Persistent<Context> leak
uv: upgrade to v0.11.9
process_wrap: update after libuv api change

The `exit_code` argument for the `ProcessWrap::OnExit` callback changed
from int to int64_t.
domain: move error handling directly into instance

Instead of doing all the domain handling in core, allow the domain to
set an error handler that'll take care of it all. This way the domain
error handling can be abstracted enough for any user to use it.