Make streams async: they never start emitting events in the current turn
Add count and time-based buffering