add withRunner method to EventStream to switch event flow context

it could be used to execute events on thread pools, actors, etc.

For example can be used to switch running context to UI thread in android