docs: def abi_to_fasta(input, output):
      '''
      Converts ABI or AB1 files to FASTA format.
  
      Args:
  
           input (str): Path to a file or directory containing abi/ab1 files or
              zip archives of abi/ab1 files
  
          output (str): Path to a directory for the output FASTA files
      '''
      direcs = [input, ]
      # unzip any zip archives
      zip_files = list_files(input, ['zip'])
      if zip_files:
          direcs.extend(_process_zip_files(zip_files))
      # convert files
      for d in direcs:
          files = list_files(d, ['ab1', 'abi'])
          seqs = [SeqIO.read(open(f, 'rb'), 'abi') for f in files]
          # seqs = list(chain.from_iterable(seqs))
          fastas = ['>{}\n{}'.format(s.id, str(s.seq)) for s in seqs]
          ofile = os.path.basename(os.path.normpath(d)) + '.fasta'
          opath = os.path.join(output, ofile)
          open(opath, 'w').write('\n'.join(fastas))