This module contains the Stream trait and a number of adaptors for this
trait. This trait is very similar to the Iterator trait in the standard
library except that it expresses the concept of blocking as well. A stream
here is a sequential sequence of values which may take some amount of time
in between to produce.

A stream may request that it is blocked between values while the next value
is calculated, and provides a way to get notified once the next value is
ready as well.