Added selective DFS ordering

Added DFSOrder and dfs ordering policies based on named template
parameters to compute pre, post, reverse post order based on the
configurations.

Added TopologicalSort based on DFSOrder
Revised DeptFirstOrder based on the newly added DFSOrder