DCPP Solver

Other than Fleury's and one final architecture change, should be done
with first pass DCPP (pre-performance optimization).