docs: def stitch_to_animation(images, outpath=None, *, duration=0.5, palettesize=256, verbose=True):
      """Stitch a series of images into an animation.
  
      Currently supports animated gifs, other formats coming as needed.
  
      Parameters
      ----------
      images : list of strings
          Filepaths to the images to stitch together, in order of apperence.
      outpath : string (optional)
          Path of output, including extension. If None, bases output path on path
          of first path in `images`. Default is None.
      duration : number or list of numbers (optional)
          Duration of (each) frame in seconds. Default is 0.5.
      palettesize : int (optional)
          The number of colors in the resulting animation. Input is rounded to
          the nearest power of 2. Default is 1024.
      verbose : bool (optional)
          Toggle talkback. Default is True.
      """
      # parse filename
      if outpath is None:
          outpath = os.path.splitext(images[0])[0] + ".gif"
      # write
      t = wt_kit.Timer(verbose=False)
      with t, imageio.get_writer(
          outpath, mode="I", duration=duration, palettesize=palettesize
      ) as writer:
          for p in images:
              image = imageio.imread(p)
              writer.append_data(image)
      # finish
      if verbose:
          interval = np.round(t.interval, 2)
          print("gif generated in {0} seconds - saved at {1}".format(interval, outpath))
      return outpath