change router factory / interface to use __invoke for sugar