Refactoring how scenarios and executionInfo keep track of their constraints, solutions and event properties