lazy service resolution, removes checking for circular deps and missing deps