Move ringbuf to use a raw buffer instead of Option<T>