code: def start(self, *args, **kwargs):
          
          wait = kwargs.pop("wait", False)
  
          # Initial setup
          self._setup(*args, **kwargs)
  
          # Build dirs and files.
          self.build(*args, **kwargs)
  
          # Submit tasks (does not block)
          self.submit_tasks(wait=wait)
docs: Start the work. Calls build and _setup first, then submit the tasks.
          Non-blocking call unless wait is set to True