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