SolutionHolder.array()
Performance enhancements: Clause caches its clones.
Perf now OK.
Auto-increase array chunks.
Easier call to solve() without need to initialize monad.
Refactoring SolutionHolder for more consise code (no dup). Introduce SolutionExtractor.
Templating RangeSolutionListener and SolutionExtractor
Iterable now ok.
Automatic setting of the topVarIndex based on goal being solved.