Update doc
Add support for nil queries
Add on_join_fn

This is useful to run functions just once, right after
a stream node is joined to another and the output is then
known.

rate() uses this to start a timer the first time.
Document send_index()