Regresion test language now uses separators at the ends of test and assert phrases.
Added appropriate matcher types for patterns.  Added preamble for debugging purposes.
Debugging
Debugging tools.  Asserts.  makeNextMatchList applied to some PNodeVectors that were inserting weird shit into code streams.
The (,a,) bug seems to have fixed itself while I was fixing something else.  Disconcerting.
Word construction phrases now require separators.
Phrase construction phrases are now delimited.
Used initial boundary matchers everywhere and everything worked great.  Discovered logic/strategy problem with internalOrTerminalBoundaryMatcher and setInternalOrTerminalBoundaryMatcherType.  Going to rewrite boundary/delimiter matching.  Committing first.
Removed InternalOrTerminalBoundaryMatcher.
Refactored InitialBoundaryMatcher into DelimiterMatcher.  Not sure how we'll deal with the ?,! coming at the end vs . but that's a small problem for later.
AtPatternMatcher now supports implicit tags on types.  I.e.   person<>  means whatever person is substituted "person" becomes that arg name.
Merge branch 'feature/implicit-prose-and-patterns' into develop
Regression tests still run with prose phrase replaced by one with implicit or explicit pattern.
Fixed bug where non-explicit patterns and prose blocks were miscounting their source tree traversal.
Fixed a bug in insertPNode that was causing it not to be properly hooked up to the next node.
Fixed a bug where tags weren't being properly counted in the source tree traversal for implicit blocks.
Fixed a bug where terminal , in patterns weren't auto-substituting themselves.
Labels must be words, now.  (Allowing ids to be labels caused a bug because they're compared by pointer not by name).
Fixed excessive reduction bug in parenthetical reduction.  Added a regression test for this problem.
Implicit/explicit list patterns now work.