Handle Data Dependencies between tasks

Issue #59 is resolved using this request.

* Pass only dependent module data 
* output field is added to task object
* Not sure how to handle data dependencies on streaming use case (need your inputs here)

Please provide feedback on the issue and the pull.