draft install/uninstall impl
cleaning up install/uninstall implementation