Merge pull request #73 from qinshihu/refactor/module-architecture