refactoring. change to a multi-module project.