Allow graph dependencies to be manually provided.

Instead of always automatically finding dependencies
of tasks it would be nice to allow developers to manually
provide them if they want to. Adjust how dependencies are
located due to this alteration + a few test cases for it.

Change-Id: I61027be7c458cd26b163ca58e703dc413735396c