Separate PurpleProtocolRoomlist into its own file and modernize it.
Separate `PurpleProtocolRoomlist` into its own file and modernize it.
Testing Done:
Verified the roomlist still works for irc and xmpp.
Reviewed at https://reviews.imfreedom.org/r/887/