Now working on 0.11.0
console: `console.dir()` bypasses inspect() methods

Use the `customInspect: false` option of `util.inspect()` to bypass any custom
inspect() function on the object being logged.

Closes #2717.
util: custom `inspect()` method may return an Object

This is more like how `JSON.stringify()` works.
Closes #2711.
crypto: split crypto classes
crypto: merge Cipher and Decipher
crypto: refactor crypto classes
crypto: replace BIO_free with BIO_free_all

From OpenSSL's documentation:

"If BIO_free() is called on a BIO chain it will only free one BIO
resulting in a memory leak."

and

"BIO_free_all() frees up an entire BIO chain, it does not halt if an
error occurs freeing up an individual BIO in the chain"
doc: fix inpect() -> inspect() typo
net: handle 'finish' event only after 'connect'
Merge remote-tracking branch 'ry/v0.10'

Conflicts:
	src/node_version.h
Revert "fs: Missing cb errors are deprecated, not a throw"

This reverts commits 6bd8b7e5405e1cdc9f56214f5f6b741806c32e5f
and fa05e8a2706e20a191942fe2b2273481605a1f14.
repl: emit 'reset' event when context is reset

Closes #1183.
repl: Use a domain to catch async errors safely

Fix #2031
readline: handle wide characters properly

Handle wide characters (such as あ, 谢, 고) as two column wide to make
cursor move properly.

Closes #555.
Closes #4994.
tls: write pending data of opposite side

Fix stucked CryptoStream behaviour, happening when one of the sides
locks-up in queued state.

fix #5023
test: Misc Windows unit test fixes

Fixes #5071, #5073.

* Normalize capitalization of drive letter
* Fix `exit()` typo in failure path
* Ignore symlink tests (Windows) if not elevated

The `test_relative_input_cwd()` test was failing on Windows when
`skipSymlinks` was `true`. So we won't run it if `skipSymlinks` is
`true`.

When it failed, the unhandled error caused Node to die before
having a chance to clean up, which resulted in two files missing
in subsequent unit tests:

 * `test/fixtures/nested-index/one/hello.js`
 * `test/fixtures/nested-index/one/index.js`

We should probably find a way to isolate this test from the other
test (`simple/test-module-loading`) that was failing when this test
poluted the disk state.
deps: update v8 to 3.17.13
v8: remove optimization switches

Remove compiler switches from $(TOPLEVEL)/deps/v8/build/common.gypi,
they are set globally in $(TOPLEVEL)/common.gypi.
bindings: update api

All compile time warnings about using deprecated APIs have been
suppressed by updating node's API. Though there are still many function
calls that can accept Isolate, and still need to be updated.

node_isolate had to be added as an extern variable in node.h and
node_object_wrap.h

Also a couple small fixes for Error handling.

Before v8 3.16.6 the error stack message was lazily written when it was
needed, which allowed you to change the message after instantiation.
Then the stack would be written with the new message the first time it
was accessed. Though that has changed. Now it creates the stack message
on instantiation. So setting a different message afterwards won't be
displayed.

This is not a complete fix for the problem. Getting error without any
message isn't very useful.
v8: loosen artificial mmap constraint

Fixes #4010.