refactor the topology interface so that it doesn't expose NumberOfTasks
initial version of regression test, commented out as it will break
hide the implementation details
provide hint on how the start should behave
respond to Hongchao's comments
respond to Hongchao's comments
respond to Hongchao's comments
respond to Hongchao's comments
Merge pull request #47 from xiaoyunwu/master

initial regression test and refactored the topology interface