Update IBarcodeSvc implementations to properly handle quasi-stable particles
Here the idea is to make the barcode service handle the aspects of barcode setting which require looking at the whole GenEvent to avoid overlaps. This is an alternative approach to the changes in !71238.