Added streaming support and refactored previous chunked encoding support

Both "simulated" chunking and real streaming are now handled in a consistent way, using Netty's `ChunkedWriteHandler`.

Any `OutMessage` with data of type `InputStream` (such as a `FileInputStream`) will be streamed and sent chunked-encoded.