completed ring buffer and modification to all. Can not test but this should be a run candidate.