Use pipe for readStreams

Pipe data directly to the socket when reading data. Allows for node's stream to handle backpressure automatically (instead of filling memory as quickly as the readStream can).

This may have an impact on node version compatibility, but it does work in v0.10, and I'd expect it to work in previous versions.