Read methods to copy data into external byte[] sinks.

Instead, look at what read() does:

```
    if (buffer.size == 0) {
      long read = source.read(buffer, Segment.SIZE);
      if (read == -1) return -1;
    }
```