code: def add_task(self, fn, inputs=None, outputs=None):
          
          # self.tasks.append({'task': task, 'inputs': inputs, 'outputs': outputs})
          self.tasks.append(Task(fn, inputs, outputs))
          return self
docs: Adds a task to the workflow.
  
          Returns self to facilitate chaining method calls