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.
Merge pull request #16 from alexrhein/parent_type_refactoring

changed type of FSTNode.parent to FSTNonTerminal.