updated solver, added extra checking for branch and bound, though it's much slower now... =/