todo: 1) autobackup of things typed in. idea: each cell change output to a stdio open file in the save format, fflush() every so often... (diffs w/r to the original file) 2) lock/freeze (glue down) a section of the screen (the rest of the screen scrolls but a row/column/block stays fixed on the screen) 3) (seems ok, but check) FIX the insert/delete row functions. a) column of equations (EX: E50 = E49+D50) b) insert a few rows, look at the equations below the insert point c) delete the inserted rows d) The equations should now be the same as in (a), but they are not... 4) make sure ISVALID should be used in place of checkbounds in interp.c 5) hide range 6) block moving into range 7) chain cells w/ equations into a linked list or dependency tree -have a top level eval, eval and UPDATE all lower nodes 8) an option to go into a ^R like ++data entry fields (highlight entry cells).... ++only allow entry in these cells.... 10) don't redraw the whole screen all the time (only cells that change, (in addition to what is in 'fixed #9')) 11) add uemacs keybinding stuff 12) add uemacs macro language 13) add uemacs command completion 14) insertrow should be openrow w/ a count arg (limits looping) 15) on a Get if the buffer hasn't been written, ask to overwrite