Move configuration magic from `finalize_app` to the start of extension loading
While the approach with finalize_app worked well enough for most use cases, some extensions (especially cache-related ones) liked to initialize clients with the current config values baked in.
Keeping track of those just to change their connection details would be unreasonable from a maintenance perspective.
Instead, we now set the values before any extension has the chance to cache any config values, thus eliminating this problem.