rework commitOften to do visuals in framebuffers so I can separate them