Improved logging of linear constraints in the conflict refiner

The logging of linear constraints by the conflict refiner in the Sub Problem Solver log file is very verbose. This has been improved.

Conflicting linear constraints are now logged using property names (for example, production) instead of extended variable names (for example, Products At Location.product@location.production[Week 1]). The constraints are logged for each resource, once for all buckets for which these are applicable.

The terms of each constraint are also rearranged to resemble the related constraint in the class model as much as possible.

For example, the log details for version 2022.10:
Products.1 Nut Chocolate
end stock = start stock + delivery - depletion + production - planned sales (for 2 buckets: Week 1, Week 2)
The log details for version 2022.07 and prior:
Products.1 Nut Chocolate.end stock[Week 1] + Products.1 Nut Chocolate.start stock[Week 1] + Products.1 Nut Chocolate.delivery[Week 1] - Products.1 Nut Chocolate.depletion[Week 1] + Products.1 Nut Chocolate.production[Week 1] - Products.1 Nut Chocolate.planned sales[Week 1] = 0
Products.1 Nut Chocolate.end stock[Week 2] + Products.1 Nut Chocolate.start stock[Week 2] + Products.1 Nut Chocolate.delivery[Week 2] - Products.1 Nut Chocolate.depletion[Week 2] + Products.1 Nut Chocolate.production[Week 2] - Products.1 Nut Chocolate.planned sales[Week 2] = 0
Note: By default, this feature is enabled. A new role or privilege is not required to access this feature.