docs: def _check_reads_hit(self, alignment_io, min_aligned_fraction):
          '''Given an alignment return a list of sequence names that are less
          than the min_aligned_fraction'''
          to_return = []
          alignment_length = None
          for s in SeqIO.parse(alignment_io, "fasta"):
              if not alignment_length:
                  alignment_length = len(s.seq)
                  min_length = int(min_aligned_fraction * alignment_length)
                  logging.debug("Determined min number of aligned bases to be %s" % min_length)
              elif len(s.seq) != alignment_length:
                  raise Exception("Alignment file appears to not be of uniform length")
  
              num_unaligned = s.seq.count('-')
              num_aligned = alignment_length-num_unaligned
              logging.debug("Sequence %s has %d aligned positions" % (s.name, alignment_length-num_unaligned))
              if num_aligned <= min_length:
                  to_return.append(s.name)
          return to_return