I'm thinking we can handshake the versions a bit.
The main package depends on whatever the versions of the backends are at the time of shipping, so they're still "baked in".
But we can release newer versions of those backends that set a tight version spec on the core package.
The only difference is if you want a newer backend version, you use the plugins option and not the backends option