void AddPackageReference(IPackage package, bool ignoreDependencies, bool allowPrereleaseVersions)
		{
			var monitor = new RemovedPackageReferenceMonitor(ProjectManager);
			using (monitor) {
				ProjectManager.AddPackageReference(package.Id, package.Version, ignoreDependencies, allowPrereleaseVersions);
			}
			
			monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
		}
        void UpdatePackageReference(IPackage package, bool updateDependencies, bool allowPrereleaseVersions)
        {
            var monitor = new RemovedPackageReferenceMonitor(ProjectManager);

            using (monitor) {
                ProjectManager.UpdatePackageReference(package.Id, package.Version, updateDependencies, allowPrereleaseVersions);
            }

            monitor.PackagesRemoved.ForEach(packageRemoved => UninstallPackageFromSolutionRepository(packageRemoved));
        }