blog: Post about v0.9.4
openssl: clean up openssl.gyp

Remove obsolete build configuration that escaped the purge in 7eaea7f.
net: allow socket end before connect

Fix a bug where calling .end() on a socket without calling .connect() first
throws a TypeError:

  TypeError: Cannot read property 'shutdown' of undefined
      at Socket.onSocketFinish (net.js:194:20)
      at Socket.EventEmitter.emit (events.js:91:17)
      at Socket.Writable.end (_stream_writable.js:281:10)
      at Socket.end (net.js:352:31)

Fixes #4463.
test: add regression test for #4463
util: fix deprecation message in `util.pump`
stream: fix event handler leak in readstream pipe and unpipe

After a stream was unpiped there would stil be residual event handlers
stream: do only fake drain when unpiped stream is the source

If the destination had multiply read streams piped to it,
they would all decrease the awaitDrain state and thereby
start the flow
doc: document the finish event

Since the stream implementer is not expected to overwrite
.end() the finish event is necessary in order to know when
no more data can be written
stream2: fix to emit end event on http.ClientResponse
repl: add 'domain' to automatic loading libs

`domain` should be a member of automatic loading libs in `repl`.

Conflicts:

	lib/repl.js
repl: remove 'repl' from automatic loading libs

In repl, calling `repl` twice shows the following message:
```
> repl
A different "repl" already exists globally
```
lint
http: Handle end only when stream is not dumped

This fixes regression introduced in some cases by 8bf0c15
build: allow to specify custom tags

When building custom `node` versions (e.g., floating features/fixes from
different versions) it's often useful to specify a custom tag which
easily identifies build when invoking `node -v`.

Introduce a way to specify this tag in `node_version.h` file or by
running `./configure --tag="<tag>"`. Insert it right after the patch
version (and before `-pre`, if build is not a release).
build: Add hyphen to custom build tags

so that ./configure --tag=foo makes a version number like v0.9.5-foo
instead of v0.9.5foo
http: remove unused variable

The module variable `END_OF_FILE` was no longer needed from 1d369317.
domain: speed up domain.create

Use `EventEmitter.call` instead of `EventEmitter.apply` because of performance.
stream: speed up instantiation of readable stream

- Stream.apply -> Stream.call
net: socket.readyState corrections

socket.readyState, .readable, and .writable behavior changed as
a result of the new streaming interfaces. Updated to be backwards
compatible with current API and adds regression test.

closes #4461
Colorize API stabilitity index headers in docs

Noted in @shtylman's #3898, API stability notes are easy to overlook
in the html documentation. This can be especially troublesome if the API
is deprecated. This commit gives visual feedback by adding in a class
to the html docs when they're generated. The API headers with
corresponding colors are also listed in the 'About this Documentation'
page for easy reference.