docs: def call_later(self, time_seconds, callback, arguments):
          """Schedules a function to be run x number of seconds from now.
  
          The call_later method is primarily used to resend messages if we
          haven't received a confirmation message from the receiving host.
          We can wait x number of seconds for a response and then try
          sending the message again.
  
          Args:
            time_seconds (float): The number of seconds from now we should call
              the provided function.
            callback (function): The method to execute when our time has been
              reached. E.g. self.retransmit
            arguments (dict): A dictionary of arguments to send to the callback.
  
          Returns:
            None
  
          """
  
          scheduled_call = {'ts': time.time() + time_seconds,
                            'callback': callback,
                            'args': arguments}
          self.scheduled_calls.append(scheduled_call)