Yes :)

The method (like the others on BaseProcessor) is supposed to be implemented by child classes in other places.  For Fedora Infrastructure messages, we have the fedmsg_meta_fedora_infrastructure module which provides those.

This change here expands that API to allow child classes to return more metadata about messages such as 'what emails are associated with the message' and 'what avatar URLs are associated with this message' in addition to just the 'what usernames are associated with this message' functionality we had before.

The inspiration for this change comes from the Debian community where users are not uniquely identified by something like a FAS username -- they rely much more heavily on the email address of the contributor.

The dict here should be a mapping of usernames (as returned by the usernames method) to email addresses.  The avatars method below should be similar: a mapping of usernames (as returned by the usernames method) to avatar urls.

A simple list of emails and avatars might suffice, but the usernames method returns a 'set', not a 'list' (which means that it is unordered).  Since we can't rely on the order of the usernames list and the order of the emails list being the same, the dict becomes necessary so users can know whose email is whose.