code: def delete_entry(self, fit = None, index = None):
          
          if type(index) == int and not fit:
              fit,specimen = self.fit_list[index]
          if fit and type(index) == int:
              for i, (f,s) in enumerate(self.fit_list):
                  if fit == f:
                      index,specimen = i,s
                      break
  
          if index == self.current_fit_index: self.current_fit_index = None
          if fit not in self.parent.pmag_results_data['specimens'][specimen]:
              print(("cannot remove item (entry #: " + str(index) + ") as it doesn't exist, this is a dumb bug contact devs"))
              self.logger.DeleteItem(index)
              return
          self.parent.pmag_results_data['specimens'][specimen].remove(fit)
          del self.fit_list[index]
          self.logger.DeleteItem(index)
docs: deletes the single item from the logger of this object that corrisponds to either the passed in fit or index. Note this function mutaits the logger of this object if deleting more than one entry be sure to pass items to delete in from highest index to lowest or else odd things can happen.
          @param: fit -> Fit object to delete from this objects logger
          @param: index -> integer index of the entry to delete from this objects logger