Implement insert for RingBuf

This is a first pass at insert on RingBuf. I tried to keep it as simple as possible.

I believe this is part of #18424