pidgin/pidgin

Create and add PurpleContacts to the manager when purple_buddy_new is called

This required some additional changes to PurpleContact. Namely that the contact always has a presence and it is no longer writeable.

Testing Done:
Ran the unit tests and verified nothing funky happens when running.

We can't test that all of the properties are properly bound because we would have to start up a lot more of libpurple than I'm willing to do for something that's temporary.

Bugs closed: PIDGIN-17685

Reviewed at https://reviews.imfreedom.org/r/1873/
i18n = import('i18n')
# use the glib preset which is defined at
# https://github.com/mesonbuild/meson/blob/master/mesonbuild/modules/i18n.py#L93
# at the time of this comment.
i18n.gettext('pidgin', preset : 'glib')