pidgin/pidgin

Use G_DECLARE_DERIVABLE_TYPE for PurpleConversation and additional cleanups

The setters for PurpleConversation are kind of crappy because of the
conversation cache in the purple_conversations api, which we'll address at a
later time.

Testing Done:
Compiled and ran locally, parted a chat and just signed out to verify no new issues.

Reviewed at https://reviews.imfreedom.org/r/613/
pidginpixmapdir = get_option('datadir') / 'pixmaps/pidgin'
subdir('emotes')
if INSTALL_PIXMAPS
install_data('logo.png', 'arrow-down.xpm', 'arrow-left.xpm', 'arrow-right.xpm', 'arrow-up.xpm',
install_dir : pidginpixmapdir)
# Some of these don't use install_subdir because it deletes the target,
# and some target directories probably have something in them, for those
# installing somewhere with existing stuff. Additionally, we have
# extra stuff in our directories we don't want to install.
install_data('edit.png', 'info.png', 'pause.png',
install_dir : pidginpixmapdir / 'buttons')
subdir('tray')
endif