We need a better solution than what's currently done with GraniteGuardian. This should be done by specifying a BackendSet or BackendRouter. We can even provide some automation around this to make guardian easy to use. But components should not be managing and calling their own backends.