Implement remove for RingBuf

Includes a fix for a small mistake in `fn insert` which is caught by test_insert for len=15, but not len=7.

Part of #18424

r? @Gankro @csherratt @huonw 
Ohhh I see right because we already moved the tail! Can you toss in a comment to this effect?