Rewrote the circular buffer using a starting position / size combination.