docs: def save(self, refresh=False):
          """Saves the log.
          If refresh is set to a timestamp, will regenerate everything from scratch.
          """
          # create directory if it doesn't exist
          # error will be thrown if this is not possible
          _busy = Purr.BusyIndicator()
          Purr.progressMessage("Generating index in %s" % self.logdir)
          self._initIndexDir()
          # if refresh is True, re-save all entries.
          if refresh:
              refresh = time.time()
              for i, entry in enumerate(self.entries):
                  entry.save(refresh=refresh)
          Purr.RenderIndex.writeLogIndex(self.logdir, self.logtitle, self.timestamp, self.entries, refresh=refresh)
          Purr.progressMessage("Wrote %s" % self.logdir)