Streaming alternatives into Wybor, part III

where we

  * drop support for infinite lists in favor of fast concatenation of
    the alternatives

  * generalize streaming interface so we can support queues, fancy
    queues, chans, etc

  * optimize the algorithm a little