I don't like the way this is implemented as a result of Characteristic being a protocol, therefore not being able to participate in heterogeneous collections. Possible alternatives:
Store subscribers on the characteristic themselves -- however I don't like having the characteristics keeping a reference to the connections
Some other way of identifying characteristics, we must know which connections subscribed to which characteristics
I don't like the way this is implemented as a result of
Characteristic
being a protocol, therefore not being able to participate in heterogeneous collections. Possible alternatives: