Smother now checks whether a pattern's subcomponents are al variables. If so, it doesn't bother to generate evaluation trees for them, since non-matching is meaningless. TODO: handle some variables and some atoms, since non-matching the variables is still meaningless.