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/
NULL_SOURCES = [
'nullprpl.h',
'nullprpl.c'
]
# nullprpl isn't built by default; when it is built, it's dynamically linked
if DYNAMIC_NULL
null_prpl = shared_library('null', NULL_SOURCES,
dependencies : [libpurple_dep, glib],
install : false, install_dir : PURPLE_PLUGINDIR)
endif