Parser

- Implemented ::scan, which iterates over parse tree nodes and calls back.
  This method skips parent nodes, terminated nodes, and nodes without the '?'
  tag.
Parser

- Improved comment. It's an important comment.
Parser

- Modified ::scan to be recursive, which will now allow arbitrary parse tree
  depth.
Parser

- Corrected comment regarding instantly recognized lexemes in ::initialize.
Parser

- Converted ::findTerminator to use the recursive scanner.
Parser

- Lexemes not immediately recognized in ::initialize MUST be tagged with "?".
Parser

- ::scan should skip nodes tagged with both TERMINATOR and TERMINATED.
Parser

- Converted ::findAttributeModifier to use the recursive scanner.
Parser

- Converted ::findAttribute to use recusive ::scan.
Parser

- Marked ::resolveAliases as needing recursion.
Parser

- Converted ::findPattern to use recursive scan.
Parser

- Converted ::findSubstitution to use recursive scan.
Parser

- Converted ::findTag to use recursive scan.
Parser

- Converted ::findOperator to use recursive scan.
Parser

- Added ::collect method for recursive node gathering that needs some local
  persistence.
Parser

- Converted ::findTerminator to use collect.
Parser

- ::findBinary diagnostics.
Parser

- Modified ::findTerminator to look at all nodes.
Parser

- Modified ::findCommand to use collect.
Parser

- Modified ::findOverrides to use collect.