changed project structure for best-practice packaging