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