option to build new payload & typos & tests
implementation of as a duplex stream