Removes a boundary symbol (Lexicon.BOUNDARY_TAG or Lexicon.BOUNDARY), which
is the rightmost daughter of a tree. Otherwise does nothing.
This is needed because the dependency parser uses such symbols.
Note: This method is a function and not destructive. A new root tree is returned.
Does whatever one needs to do to a particular tree.
This routine is passed a whole Tree, and could itself
work recursively, but the canonical usage is to invoke this method
via the Tree.transform() method, which will apply the
transformer in a bottom-up manner to each local Tree,
and hence the implementation of TreeTransformer should
merely examine and change a local (one-level) Tree.