[qtcontact-sqlite] Allow contacts to be deactivated

Deactivation allows a contact to be removed from the working set, yet
still retain its data and relationships.  If reactivated, the contact
should resume the state it had prior to deactivation.  Deactivation can
only be performed for contacts that have an external sync target.

A contact can be deactivated by saving a detail of type QContactDeactivated,
and reactivated by removing that detail.  A deactivated contact has
the IsDeactivated flag set in QContactStatusFlags.

By default, deactivated contacts are excluded from queries; they can
be explicitly included by matching for the IsDeactivated flag in
QContactStatusFlags.  Retrieving a deactivated contact is also possible
by specifying its contact ID directly.
Merge pull request #106 from matthewvogt/deactivation

[qtcontact-sqlite] Allow contacts to be deactivated