make configuration lifecycle independent from router