Genuinely, I'd like to know why - is it just a relic of Drupal 6 code, or are there benefits to this fields-attached-to-nodes method I'm not grasping?

At least from my perspective, potential benefits from making groups entities:

  • Not having to fuss with node-by-node declarations of grouphood. Are there any use cases where someone would make a entity potentially a group, but not always a group? And if there are, wouldn't it make sense for them to optionally have an associated group?
  • No more having to attach multiple fields to group nodes to control different group functions.
  • No more swearing a blue streak because you accidentally deleted one of the group-related fields. (although this one may mostly be just me)
  • Making it easier to make and manage multiple type(bundles) of groups.