[ ] Add pipeline::StateTracker::poll_changes() that allows to block (from any thread) until state is changed to one in the specified mask. It should support timeout argument (with an option for no timeout and infinite timeout).
[ ] sndio::IDevice::poll() and implement it in ReceiverSource and SenderSink using StateTracker.
[ ] Add roc_receiver_poll() and roc_sender_poll() to C API.
Needed for #473 abd #680.