Read pointer wasn't circular too!
Added better grow logic.
Randomized the input data.
Working on another minimized test case.