Speed up ConstrainedFDLayout::makeFeasible() by 80%.

This change speeds up makeFeasible() performance when resolving overlaps
for large sets of rectangles and constraints significantly by allowing a
single VPSC instance to be reused and have new constraints for overlap
added to it so long as we don't encounter any unsatisfiable constraints.