Interface ImageTaskManager for Image-based Tasks

Clearly defined with relationship between derived ImageTasks and the
respective ImageBackend.   Once tasks are derived from
TaskImageContainer, they should only have limited functionality back
to the ImageBackend to spawn new tasks to describe their internal task
graph and manage their image references.  The new class ImageTaskManager
defines this relationship and implies that most of functionality should
be internal to the task itself rather than the ImageBackend.

Also, included clean-up of some unused parameters in ImageConsumer
interface as well.

Change-Id: I6a0a5f72aea55adc8b846eb3cd945b61bc6d2a93
9 files changed