splitting the app to separate modules and routing.