ring: ring buffer stream

streams::ring provides an [[io::stream]] implementation which provides
rings buffers, utility functions which pair well with bufferred I/O,
and with [[io::writev]].

A ring buffer can be used to simplify the management of buffers for
buffered streams. They use size fixed buffers as if they were connected
end-to-end. The written bytes remains stable while the read ones are flushed,
and made available for future writes.

The [[mkvector]] method returns a vector slice of the writen bytes. It keep
trace of the previously vectorized bytes, so consecutives calls never returns
the same bytes.
