IRCv3.2 message tag support, tests for same.

This PR adds message tag handling on input and output and a test for same; it is pulled from an old implementation of POE-Filter-IRCv3 but could probably use some extra review, especially since those codebases were divergent at that stage.

I don't know how interesting this is to you, considering IRCv3.2 appears to be still experimental and there are few implementations using message tags, but I'm leaving it here as it opens the door to further IRCv3 enhancements to the PoCo-IRC family.