ca_ringbuffer: remove implementation based on AVFifoBuffer

I stole some good ideas from ao_portaudio's ringbuffer and went from there.
The main difference is this one stores wpos and rpos which are absolute
positions in an "infinite" buffer. To find the actual position for writing /
reading just apply modulo size.

The producer only modifies wpos while the consumer only modifies rpos. This
should help with what I want to do next: remove the threads and enforce
lockless thread safety in the SPSC case using atomic types and memory barries
to avoid reordering by the compiler and/or hardware.