fixed N-M range problem
better error message for situations where a creates does not exist after execution
catching non-DAG graphs with informative error
added example with deterministic order
made sink/source tasks into lists for predictable ordering
added functional test for deterministic ordering
refined deterministic test to be easier to test
refactored subgraph_needed_for to only use networkx to get ancestors and descendants in a smart way
make sure that iter_tasks is using UniqueOrderedLists in the right way
changed order of deterministic-example to be consistent with how algorithm works
added some documentation about the deterministic execution order
made test for dual dependency that is out of order
fixed bug with multiple dependencies
Merge branch 'issue-61'
Merge branch 'issue-64'
merging in issue-65