Reducer control flow

- removes `ReducibleOf` because it was literally just a weaksauce surrogate for `Stream`
- removes `concat` and `flattenMap` forms which take reducibles of sequences
- adds `Stream.unit` to replace those uses
- restores the `collection` parameter to enumerators
- using `collection`, makes `Stream` reduction pure
- simplifies some other bits (e.g. `++`)
- makes the convenience `typealias`es in `Reducible` public
- ~~does not yet resolve #26 but hopefully will soon now that I think I have any idea what I’m doing with it~~ Tackling that in a later PR.