router/controller structure revamp