realtime: Runner: add method to wait until network finished

Currently not useful for much more than blocking the calling thread
indefinitely, because there's no way to stop the ticking thread other
than using Runner::stop().

Runner should implement a generic mechanism for network to signal that
it is finished (something like the "hasData" paradigm).
apps: add simple latency testing app

The app just sends audio input through (adjustable) delay to audio output.
It is useful for testing I/O latency, as well as whether processing
functions correctly at a desired audio configuration - that's where
the delay is useful.