Another confusion to me, I found that the addListenerTo() method of
PersonGroupLabelProvider which extends ListeningLabelProvider is never got
called by the application. How is the model's elment added into
personPhoneKnownElements and personPhoneGroupKnownElements ObservableSets
and how does the element's change got listened? What's the purpose of
addListenerTo(). I could not find any document and comment on what the
method does. From its name, looks like it adding listner to the element
such that the element's change can be notified. But I went through the
source code and did not find that.