the method resolveName adds a completion point for it using the given
expected type. Thus, we propagate the expected type if stx[0] is an identifier.
It doesn't "hurt" if the identifier can be resolved because the expected type is not used in this case.
Recall that if the name resolution fails a synthetic sorry is returned.
Returns true if stx is a by expression with an empty tactic body
(not a parse error producing .missing).
The structure is: node byTactic [atom "by", node tacticSeq [node tacticSeq1Indented [node null []]]]