The windows package management I am developing on, has some new core features.
In that case, I developed on the 'feature-core'. Since each package compiles or requÃres features, there is a database driven engine, which checks which packages complies which feature, and what package requires what version of what feature.
Today I finished the tagging features as installed/uninstalled by the FeaturesEngine, so it will be very easy for the InstallerEngine to access that API.