Cleaned up the "Dao.Predicate" module, some of the comments were very old.
Bug fix: had to rewrite a large portion of the  'Dao.NewParser.Parser' and 'Dao.NewParser.ParserTable' to make it work as intended, but I got it.
Renamed the constructors of 'Dao.NewParser.ParseTable' so they are now of the shorter form: 'Dao.NewParser.ParTab___', which I think also makes it less easily confused with the 'Dao.NewParser.Parser' constructors.
Also, modified 'Dao.NewParser.CFGrammar' such that it contains references to both the 'Dao.NewParser.ParseTable' and it's resultant 'Dao.NewParser.TokStream'. I defined the 'deleteTable' function to delete the 'Dao.NewParser.ParseTable' and let the garbage collector free up some memory if you don't need it, but I think it is better to provide that choice to the programmer using the "Dao.NewParser" module. It may be handy to have the 'Dao.NewParser.ParseTable' data available for analysis of parsers during runtime.