rewrite parser using new architecture
 - stages
   - tokenization
   - clean up tokens (classify reserved/unquoted, join up lists of characters,
     ditch delimiters)
   - build CST
   - build AST
 - tests:  in progress.  done for first two stages

also separate attempt (probably will be discarded) for a scannerless new version