title: Django: how to aggregate / annotate over a many-to-many relationship?
body: <p>I have a Person model and a Tag model, with a m2m between them.</p>
  
  <p>I need to extract the tag which is connected to the most records within a given Person queryset, together with the count. </p>
  
  <p>Is there an elegant, efficient way to extract this using the Django ORM?</p>
  
  <p>Better yet, is there a way to get the entire tag distribution through some annotation? How can one even pull all of the objects connected to a subset of objects connected via a m2m?</p>
  
  <p>Thanks!</p>