ObserveReader is used to observe state inside Reader.
ReaderStream is used to convert a futures::io::AsyncRead into a futures::Stream.
futures::io::AsyncRead
futures::Stream
ReadEvent will emitted by ObserveReader.
ObserveReader