Added friends list difference checking.
    Non-WarCraft III clients will see users removed when using "/f r".
    All clients now remove the libpurple buddy when the difference suggests to do so.
    This means you won't get buddies who are not on your Battle.net friends list left in your libpurple client, unless you change the friend list while the current libpurple client is offline (for example, with an official client).
    This also means that using "/f r" removes the buddy from your libpurple client.
Fixed many memory leaks in handling SID_GETCHANNELLIST, EID_SHOWUSER, EID_JOIN, EID_CHANNEL, telnet event SHOWUSER, telnet event JOIN, telnet event USERFLAGS. Fixed memory leaks on close/disconnect involving the internal channel list, channel name, channel members, friends list, away message, DND message. Fixed memory leaks in bnet_join_chat(), bnet_tooltip_text(), bnet_get_location_text(), bnet_set_away(), bnet_set_dnd(), bnet_clan_packet_unregister().
Added bnet_input_free() to unify cleaning up of the input buffer and related fields.
If a friend is both in Do Not Disturb and Away states, this is correctly reflected in the buddy list. It no longer prints the second of the two warnings to the current chat channel every minute (usually "x is refusing messages (...)".
Fixed a bug where the friends list was never updating libpurple, thus all friends were in weird states appearing as if they were offline with green dots in Pidgin and having multiple contradicting Status lines.
Fixed outgoing chat being HTML escaped when being given to libpurple.
Changed tooltip text "Has you" to "Mutual" to be more true to what the field means on Battle.net.
Fixed a warning in compiling of srp.c (type gsize * being used in param size_t *).
Fixed a warning in compiling of w3clan.c (mixed declarations and statements).