CombinationService - Fixes and refactor

Fix - DuplicateSuppression was overaggressive and filtered first
instance of an event because was incrementing the duplicate id prior to
checking if the event was a type that should be handled, but still
checking for each registration.  So it failed when more than one
subscription.
Removed - IUniqueEvent interface and handling - changed to use Equals
override on event classes, so no special interface needed.