videostream: Prioritise latency by clearing the queue on new keyframes
VideoStream queues frames after encoding and then using a frame-callback like pattern another thread picks the oldest frame in the queue and sends it over the wire. If the streaming is the bottleneck we can build a big queue. This is managed by changing the framerate but it doesn't reduce the queue size.
If we clear the queue when we get a new keyframe we can ensure the pending-send queue is never bigger than the keyframe distance.