Limit caret redraws to a maximum of once per cycle

Any operation or group of operations that affected multiple
paragraphs would cause the caret to re-render multiple times.

Now, updates are stored, and the final caret state is redrawn
only once on the next cycle.