feat(injector): implement a different approach to injector scopes

An easy way to review this is to read the tests and see if that's what we want
It's sufficient if there is a parent injector with that scope (it does not have to be this scope) so the error might say something like "... or parent injector" or Maybe "no injector for RouteScope"?
What do you think?

Also, this exception should show the dependency path such as "(Foo -> Service)" (the same way other exceptions do).