AC-FOVE: code refactoring for generalized aggregation parfactors

* AggParfactor: support for generalized aggregation parfactors on
splits
* Constraint, Prv: extending Replaceable
* Replaceable: interface to unify objects that support substitutions
* Lists, Sets: generalized (a little) substitutions over sets and
lists of Replaceables
* AggParfactorTest: added more tests for splits (including on
generalized aggregation parfactors)