framework: add graceful shutdown
refactor stop and channel select way
remove GracefulShutdown and add stop() at the end of Start()
Merge pull request #74 from fengjingchao/master

Framework: clean up resources after task calls Exit()
Merge pull request #75 from xiaoyunwu/master

refactor the NewTreeTopology to use nTasks instead maxID
remove abortTask as it doesn't help