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/
if PLUGINS
if x11.found()
gntclipboard = library('gntclipboard', 'gntclipboard.c',
dependencies : [x11, libpurple_dep, libfinch_dep, glib],
name_prefix : '',
install : true, install_dir : FINCH_PLUGINDIR)
gntgf = library('gntgf', 'gntgf.c',
c_args : ncurses_header,
dependencies : [x11, libpurple_dep, libfinch_dep, ncurses, glib],
name_prefix : '',
install : true, install_dir : FINCH_PLUGINDIR)
endif
gnthistory = library('gnthistory', 'gnthistory.c',
dependencies : [libpurple_dep, libfinch_dep, glib],
name_prefix : '',
install : true, install_dir : FINCH_PLUGINDIR)
gntlastlog = library('gntlastlog', 'lastlog.c',
dependencies : [libpurple_dep, libfinch_dep, ncurses, glib],
name_prefix : '',
install : true, install_dir : FINCH_PLUGINDIR)
gnttinyurl = library('gnttinyurl', 'gnttinyurl.c',
dependencies : [libpurple_dep, libfinch_dep, libsoup, glib],
name_prefix : '',
install : true, install_dir : FINCH_PLUGINDIR)
grouping = library('grouping', 'grouping.c',
dependencies : [libpurple_dep, libfinch_dep, glib],
name_prefix : '',
install : true, install_dir : FINCH_PLUGINDIR)
endif # PLUGINS