Cleaning up various components.

1. In order to aid future features its useful to split
split apart the linear_flow and have a good base
class that is not connected to a ordered or linear flow.
2. Have the graph flow inherit from the linear flow since
it is performing a linear run using a topological ordering
of the tasks.

Change-Id: I287cd4a666caf09ca3a4cdf1d53814e9c6feb765