qulogic/pidgin

Add a cancellable property to PurpleConnection and port IRCv3 to it

As more and more of our protocols start using Gio, it just makes sense to have
a cancellable ready for them.

Testing Done:
Connected, disconnected, and reconnected and IRCv3 account without issue.

Reviewed at https://reviews.imfreedom.org/r/2864/
libpurple/data/purple-url-handler.desktop.in
libpurple/protocols/null/nullprpl.c
pidgin/data/im.pidgin.Pidgin.desktop.in