Merge libpurple into finch

Closes #20993.
Closes #17487.