Added IListenerSet interface to support different implementations.
* ListenerSet (the standard implementation)
* WeakListenerSet which uses WeakReferences. This simplifies memory and
object management but needs more cpu power.
Made TalkerStub and sub classes aware of custom IListenerSet
implementation support.