I've decided to take yet another tack on the parser and return a function instead of a string.  The parser as it is right now works well enough until you start getting nested cells and then all hell breaks loose.
Totally redid the parser, exercised all the code.  The 8 operator doesn't work, and neither does the decrement code from Chapter 2.  But everything else works and it's pretty spiffy.