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