Put design rationales of ReadableByteStream

Issue: #177
These two bullet points are confusing because they use `readInto()` in multiple ways. You could either use `[[onReadInto]]` for the underlying source hook, or say e.g. "If the file descriptor ..., then the underlying source's `readInto()` should return -2. In that case, `stream.readInto()` will return `0`."