Fix bug complement rule parsing in Object::procString
Assign the correct rule number when passing a single rule to Object::procPair. The method detected that only one rule was present correctly but failed to tell the external code which one it had found. This led to the rule map being updated incorrectly. The commit also switches the order in which the rules are assigned in Intersection constructor to be consistent with the rest of the class and the Union operation.