Implement UX for leaving a group
This MR also includes the creator's part of the UX for dissolving a group since it is almost the same.

Closes#671
See merge request !367
Refactor contact lists, their adapters and items
This was supposed to be a preparation for #678 to make the contacts lists cleaner and easier to re-use for different use-cases. Turns out #678 can't use this work, but it is probably nice to have anyway.
During this work, support for multiple identities has been removed from the various contact lists.
See merge request !363
Private Group List UI
This MR implements the UI for the list of private groups.
It reacts to three types of events to refresh the displayed data:
* new group message received
* private group added
* private group removed
Missing from final implementation:
* entering groups
* adding new groups
* reacting to a future group dissolved event
* actually removing a dissolved group



Closes#660
See merge request !335
All text that can be generated by users will show emoji from the
shipped sprites.
For all messages and posts, the custom emoji keyboard is now available.
This also disables menu actions rather than hiding them and thus
closes#677
Included is a fix for a regression that was not showing the keyboard
automatically in forums and thus
closes#676
When the user enters a private conversation after adding her second
contact, an onboarding screen will be shown highlighting the possibility
of introducing the contacts to each other.
Attach optional messages to invitations in Conversation view

Closes#359
See merge request !299