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