Refactor, add test projects.