[libcommhistory] Fix extremely slow groups query with lots of events

The full join on the Events table caused this query to take several
minutes to execute with 5000 events. Using a subquery reduces that to
under 500ms.

There is more room to optimize these queries later.
[libcommhistory] Suppress contacts without the required address type

When selecting recent contacts for IM, we only want contacts that have
IM accounts.
Merge pull request #31 from special/slow-query

[libcommhistory] Fix extremely slow groups query with lots of events
Merge pull request #30 from matthewvogt/suppress

[libcommhistory] Suppress contacts without the required address type
[libcommhistory] Fix Qt4 build
Merge pull request #32 from special/master

[libcommhistory] Fix Qt4 build
[libcommhistory] Fix broken signal connections
Merge pull request #33 from matthewvogt/connections

[libcommhistory] Fix broken signal connections
[libcommhistory] Add setEventStatus method to DeclarativeGroupManager

Technically, this has nothing to do with groups. Regardless, there is no
other sane place to put this with the current API, and it makes no sense
to create a more elaborate event API for the current scope of the
declarative plugin.

It couldn't be reliably done as part of the ConversationModel without
also having use of SingleEventModel as a fallback, and that would be
much less convenient for usage.
Merge pull request #34 from special/declarative-eventstatus

[libcommhistory] Add setEventStatus method to DeclarativeGroupManager
[libcommhistory] Use libcontacts contact cache

Processes using both libcontacts and libcommhistory should share a
single cache of retrieved contact details.
Merge pull request #35 from matthewvogt/libcontacts-integration

[libcommhistory] Use libcontacts contact cache
[libcommhistory] Simplify unknown address comparison

libcontacts address resolution makes this unnecessary.
[libcommhistory] Handle contact removal in RecentContactsModel
Merge pull request #36 from matthewvogt/unknown-comparison

[libcommhistory] Simplify unknown address comparison
Merge pull request #37 from matthewvogt/handle-remove

[libcommhistory] Handle contact removal in RecentContactsModel
[libcommhistory] Use generic phone number functions

Use the phone number functions exported by qtcontacts-sqlite for
uniform number handling in related projects.
Update dependency version
Merge pull request #38 from matthewvogt/normalize

[libcommhistory] Use generic phone number functions
[libcommhistory] Report resolving status from RecentContactsModel

Clients should be able to determine if the RecentContactsModel has
unresolved events or not.