aggregate received data as long as there's data in kernel buffers or 're...

...ceived-message-size-limit' is reached, see #2886

Here's another pull request to reduce the number of `Received` messages by aggregating more data when a ByteBuffer is exhausted while reading from a channel and thus it is likely that more data is available.