however it does not remove subkeys from previous versions so I can't test for a subkey.
Can you not use the absence of the subkey as an indicator that the update is not installed?
Not having a standard installation directory definitely puts a kink in doing file version checks.