externalize routing and container, removed tight coupling to dicit