[nemo-qml-plugin-contacts] Emit change signals properly

Emit changed signals explicitly rather than by comparison with an
empty QContact object, otherwise the following scenario can prevent
signal emission:
 - internal contact has a detail containing a value which is different
   to the default-constructed value
 - contact is updated, changing the value to the default-constructed
   value
 - the new value is compared with the same value retrieved from the
   empty contact, which is the defaul-constructed value
 - no change is detected, and thus no signal is emitted
[nemo-qml-plugin-contacts] Do not calculate display label lazily

Lazy calculation can result in a change signal being emitted from
an accessor function, which can be wrongly detected by the QML engine
as a binding loop.
Merge pull request #77 from matthewvogt/change-signals

Improvements to signal emission from SeasidePerson
Merge pull request #80 from matthewvogt/extended-numbers

[nemo-qml-plugin-contacts] Allow extended numbers through de-duplication
[nemo-qml-plugin-contacts] Allow remove duplicate numbers without Person object
Merge pull request #81 from matthewvogt/duplicate-removal

[nemo-qml-plugin-contacts] Allow remove duplicate numbers without Person object
[nemo-qml-plugin-contacts] Only contacts with valid IM accounts pass filtering

When requiredProperty specifies IM accounts, only contacts possessing
valid IM accounts (those linked to valid telepathy accounts) should
be included in the filtered model.