Fix DF-level matching to match 'default' matching
This makes two main changes to the trigger matching strategy:
First, the 'default' trigger matching allows matching fewer reco objects than there are trigger objects. I thought I had allowed for this, but there was a caveat - the offline combination would only be formed if there existed a unique combination of offline objects that matched, even if downstream the user would only care about one of these. This is now fixed.
The other change deals with multiple objects reconstructed in the same RoI. Currently the 'default' tool returns all of these while the DF-level tool returns only the highest pT one (following discussions with egamma). Note that neither of these is really correct: the correct behaviour would be to create a combination for each object in that RoI, but this is an edge case and would be different from the original behaviour.