Stream: fixing typos.
Stream tests: adding promise scenarios again.
Stream: removing unneeded code.
Stream tests: better code coverage with minor modifications.