Partway through refactoring BoolVarTree to use an n-way branching with a Vector