implement cursor save and restore
implement the alternate screen buffer