Offscreen Buffer creation and management
Created a separate 'Game' class to delegate rendering to