Add fun example with logger
Make recursive stream Dup'ing work.

And from that, make the logger work recursively, too.
Make Dup a func instead of method, much cleaner
Replace Dup with ValueStream.Split().

This involves less pointer trickery, which makes the caller's
responsibilies much cleareer.
DupIntoSlice -> IntoSlice
Add IntoSlice() example
Iterator implementations really needn't be exported
Clean up and doc custom reduce step creation a bit