Commentary changes to tree.hh
Introduce sub-expression operator, and "flat" list generator

- The list generator now evaluates the expression in "flat" context.
  It's thus now possible to say things like [child] to convert a node
  on TOS to a list of its children, which had to be circumscribed by
  [child] swap drop before.

- Also due to the above change, the approach to stack protection has
  been changed.  The plus-prefixing was dropped (in no small part due
  to awkward duality of prefix plus, which was stack protector, and
  postfix plus, which was iterator), correspondingly about two dozen
  tokens and parser rules were dropped as well, and instead a prefix
  "-" was introduced as an operator that evaluates its argument in a
  sub-expression context.

- The optimizer can still promote the protected expressions to avoid
  having to instantiate actual subexpression operator.