Reducer control flow

- removes `ReducibleOf`
- restores the `collection` parameter to enumerators
- using `collection`, makes `Stream` reduction pure
- simplifies some other bits (e.g. `++`)
- does not yet resolve #26 but hopefully will soon now that I think I have any idea what I’m doing with it