docs: def get_masters(ppgraph):
      """From a protein-peptide graph dictionary (keys proteins,
      values peptides), return master proteins aka those which
      have no proteins whose peptides are supersets of them.
      If shared master proteins are found, report only the first,
      we will sort the whole proteingroup later anyway. In that
      case, the master reported here may be temporary."""
      masters = {}
      for protein, peps in ppgraph.items():
          ismaster = True
          peps = set(peps)
          multimaster = set()
          for subprotein, subpeps in ppgraph.items():
              if protein == subprotein:
                  continue
              if peps.issubset(subpeps):
                  if peps.union(subpeps) > peps:
                      ismaster = False
                      break
                  elif peps.intersection(subpeps) == peps:
                      multimaster.update({protein, subprotein})
          if not ismaster:
              continue
          elif multimaster:
              premaster = sorted(list(multimaster))[0]
          else:
              premaster = protein
          for pep in peps:
              try:
                  masters[pep].add(premaster)
              except KeyError:
                  masters[pep] = {premaster}
      return masters