Asynchronously resolve contacts for EventModelPrivate::addToModel

To preserve the current API (for now), a synchronous option is offered
that will insert the event immediately regardless of contact resolving,
and update asynchronously if necessary. This is used only by
EventModel::addEvents, and can be removed once that function is made
asynchronous.
Port RecentContactsModel to new event contact resolution
Forbid contact resolving when SyncQuery is enabled

Contact resolution is always asynchronous. It could be implemented to
fill the model synchronously and update contacts afterwards, but it
would be fragile and of little use. Synchronous models should be
discouraged as much as possible, anyway.
Don't emit modelReady until model is populated