[qtcontacts-sqlite] Use definition mask for aggregate update

When updating aggregates of a modified contact, apply the same
definition mask used in updating the constituent.
[qtcontacts-sqlite] Report presence changes independently

If requested via contact manager parameters, the contact manager will
report changes to contact presence details via a separate signal to
that used to report other changes.  If not requested, the usual signal
will be emitted.

A presence change is one where the only affected details (according to
the update's definition mask) are in the set { Presence, OnlineAccount,
OriginMetadata }.
[qtcontacts-sqlite] Suppress presence change notification by default

The qtcontacts-sqlite engine will now suppress the emission of the
contactsChanged signal for presence changes, unless configured to do
otherwise.  Presence changes are still reported via the internal
contactsPresenceChanged signal, which should be preferred if presence
change processing is desired.

If the 'mergePresenceChanges' parameter is set to 'true', then presence
changes will be reported via the contactsChanged signal rather than
the contactsPresenceChanged signal, which yields behavior consistent
with the Qt4 QtContacts API.  If the parameter is not supplied to the
engine, a warning is emitted to describe the effect.

The 'separatePresenceChanges' parameter is removed.
Merge pull request #95 from matthewvogt/presence-updates

[qtcontacts-sqlite] Report presence changes independently