f3889d8932
This should have no noticeable impact on plot.py, but shared classes have proven helpful for maintaining these scripts. Unfortunately, this did require some tweaking of the Canvas class to get things working. Now, instead of storing things in an internal high-resolution grid, the Canvas class only keeps track of the most recent character, with bitmasked ints storing sub-char info. This makes it so sub-char draws overwrite full characters, which is necessary for plot.py's axis/data overlap to work.