scrollbuffer now writes directly to buffer whenever it can, simplifying ...

...code (possibly at the expense of readability)