Use the extra display RAM in the SSD1306 as a second display buffer.
Enable either of the buffers to be the actively displayed buffer.
Add support for writing to either the buffer (active or inactive).
Add smooth scrolling support to scroll inactive buffer onto the screen.
Add support for RAM based bitmaps.