Added a whole bunch of code and got to the part about the parser and decided I was probably doing it all wrong.  I'm committing this for historical value.  I will shortly be blowing this all to hell.  Thank you for your patience.