changed type of FSTNode.parent to FSTNonTerminal.

A parent must always be a non-Terminal and this makes many casts redundant.
I found no situation where the object passed to setParent(..) might not be a FSTNonTerminal.