[libcontacts] Emit saveContactComplete() when appropriate. Contributes to JB#45633
When a new contact is created via a save operation, the backend will create that local constituent and also an aggregate for it. The UI often wants to know that newly created aggregate's ID, e.g. to show the contact card.