Python solver for boolean decision problems, based on PuLP