code: func NewRing(buffer BufferAt) Buffer {
  	return &ring{
  		BufferAt:   buffer,
  		WrapReader: wrapio.NewWrapReader(buffer, 0, buffer.Cap()),
  		WrapWriter: wrapio.NewWrapWriter(buffer, 0, buffer.Cap()),
  	}
  }
docs: // NewRing returns a Ring Buffer from a BufferAt.
  // It overwrites old data in the Buffer when needed (when its full).