first: read all objects from source stream

further explanation in comment
test/first: remove buffering to make test more robust

The old implementation could have passed the test if the size of the input was
less than the highWaterMark. Read the comment in the test to find out why.
Merge pull request #50 from Clever/first-read-all-data

first: read all objects from source stream