The undocumented ->add methods on these checks would alter the objects rather than returning new ones. Further, these methods were used by the | and & overloads, which could cause action at a distance. This commit removes the ->add method and the special casing in overloading for all() and add() checks. Now, all checks make new all() or add() checks. This would lead to a problem with stringifying the newly-created any(), because any(1, any(2, 3)) would look quite different to any(1,2,3) and, in fact, just terrible. Now, when creating a new all() or any(), any arguments of the same type are collapsed. all(1,2,3) and all(1,all(2,all(3)) are equivalent.
...because perl 5.8.5 has bugs in chained magic gotos! #22