stream: only end reading on null, not undefined

The [Stream documentation for .push](http://nodejs.org/api/stream.html#stream_readable_push_chunk_encoding) explicitly states multiple times that null is a special cased value that indicates the end of a stream. It is confusing and undocumented that undefined *also* ends the stream, even though in object mode there is a distinct and important difference.

The docs for Object-Mode also explicitly mention null as the *only* special cased value, making no mention of undefined.