title: How to use canvas without import task module in celery client?
body: <p>Suppose that we have a caller <code>A</code> and a callee <code>B</code>. <code>B</code> implements some function and has heavy dependencies.</p>
  
  <p>Typically, I don't want to import these dependencies in <code>A</code> to keep it lightweight.</p>
  
  <p>Previously, I can happily use <code>send_task</code> to call <code>B</code> by name. </p>
  
  <p>Now I have more complex logic and wanna orchestrate tasks with canvas. Following the user guide <a href="http://docs.celeryproject.org/en/latest/userguide/canvas.html" rel="nofollow noreferrer">here</a>:
  <code>
  signature('tasks.add', args=(2, 2), countdown=10)
  </code></p>
  
  <p>I got a task <code>NotRegistered</code> error.</p>
  
  <p>How to register task by name?</p>