Make changes to `IWorkflow` to optionally accept a timeout, and then add checks in `executor.go`
Make changes to
IWorkflowto optionally accept a timeout, and then add checks inexecutor.go