From what I can tell XenForo doesn't have an icon-legend to speak of, so figuring a way to style it in that platform should be interesting.
As for the legend, given the significant number of icons that exist, the legend should be dynamic, and show only icons that appear on the current page. However, it should always show the variations of the icons regardless if they appear (so you know there are no new posts, for example).
In order for this to work, make a new vw_Factory_Icon and refactor vw_Factory_ListItem among others to use it. Take notes in the new ::get_icon method and have a ::get_legend which would compile a list of all the icons that were gotten, which we can then turn into a legend block.