Refactor decorators

Make decorator code lean and mean by employing FunctorTask to implement
them. This results in:
- making everything we call 'task' to provide same interface;
- encouraging distinction between task classes and task instances;
- code becoming simpler.

Implements: blueprint refactor-decorators
Change-Id: I43f4ae2db2b7a20f294e2f2d91d53e151a60b139