introducing a new task description to avoid shadowing

It is now possible to use the task_description kwarg inside the task
decorator call to set a description. This means that description does
not need to be imported (the decorator symbol clashes with the
description field from build.py).
avoiding reuse of deprecated description decorator
renaming task_description -> description

It's no longer a problem to shadow the `description` decorator from the
enclosing scope, because we don't use it anymore. It will be deprecated
and then removed in an upcoming release.