Fix bugs with Stream derivative #on_value

The Map and Select Streams were not respecting the change
from an @on_value callback to a @callbacks list (my bad).
I've moved this logic into a protected #occur method on Stream
to make extending Stream cleaner.