split* is no longer a macro; split evaluates streams only *once*

Closes #153