modularized controllers, registered in app.js
refactored some split logic into a service