code: def task_delete(self, **kw):
          
          def validate(task):
              if task['status'] == Status.DELETED:
                  raise ValueError("Task is already deleted.")
  
          return self._task_change_status(Status.DELETED, validate, **kw)
docs: Marks a task as deleted, optionally specifying a completion
          date with the 'end' argument.