pidgin/pidgin

Add purple_contact_info_get_menu and PurpleContactInfo::populate-menu

This is the replacement for the blist-node-extended-menu signal in purple 2.

This uses BirbActionMenu which means libpurple now depends on birb.

Testing Done:
Ran the unit tests under valgrind.

Reviewed at https://reviews.imfreedom.org/r/2837/
syntax: glob
.*.swp
.DS_Store
.flatpak-builder
*.pyc
*~
\#*\#
syntax: regexp
^build(.+)?\/
win32-install-dir(\.release)?
po\/pidgin3\.pot$
^subprojects\/.+\/