We'll look at the conditionally integration support in the installer in the next version of the designer.
About the version number. We investigated whether we could do a conditional compilation of the extension, so the one shipped with v4.0 showed v4.0 (and thus would result in the message from vs.net that a new version was available), the one in v4.1 showed v4.1 etc. This turned out to be impossible! Conditional compilation is not hard, however vs.net extensions have a manifest file, which is xml. Xml doesn't have conditional compilation statements so we created a couple of these files, each with a different version number and used different csproj files to use the right one. This didn't work, as the vs.net sdk has the manifest filename hardcoded in its targets: source.extension.vsixmanifest.
So we thought: let's copy the file required over the existing source.extension.vsixmanifest, then it should work, right? Well... no. During build the vsix compiler copies the extension to the experimental hive: however if there is already a build with a higher versionnumber there, it can't continue as it can't 'remove' the one there and crashes with an error.
I.o.w.: this system of integrating inside vs.net is so broken it's beyond repair. (FUBAR ).
So we changed the version number in the gallery to v4.0. This sucks too, but at least users won't get a popup that a new version is available while you already have the latest installed.