Ringbuffer

This cleans up the ring buffer use in many drivers. To be test-flown today. Do not merge until test results are available.