Refactor how routing works (add some boxing), wire up services controller