docs: def load_alleles():
      """Parses the IEDB MhcAlleleName XML file and returns a list of Allele
      namedtuple objects containing information about that each allele's HLA
      class and source organism.
      """
      result = []
      path = local_path()
      etree = xml.etree.ElementTree.parse(path)
      for allele in etree.iterfind("MhcAlleleName"):
          name_element = allele.find("DisplayedRestriction")
          mhc_class_element = allele.find("Class")
          # need at least a name and an HLA class
          if name_element is None or mhc_class_element is None:
              continue
          name = name_element.text
  
          synonyms = set([])
          for synonym_element in allele.iterfind("Synonyms"):
              for synonym in synonym_element.text.split(","):
                  synonyms.add(synonym.strip())
          mhc_class = mhc_class_element.text
          organism_element = allele.find("Organsim")
          if organism_element is None:
              organism = None
          else:
              organism = organism_element.text
  
          locus_element = allele.find("Locus")
  
          if locus_element is None:
              locus = None
          else:
              locus = locus_element.text
  
          allele_object = Allele(
              name=name,
              mhc_class=mhc_class,
              locus=locus,
              organism=organism,
              synonyms=synonyms)
          result.append(allele_object)
      return result