private void deleteOldBinaries() throws IOException {
		// dedup and omit files that don't exist
		oldBinaries.sort(null);

		Iterator<Path> toDelete =
			oldBinaries.stream().distinct().filter(Files::exists).sorted().iterator();
		for (Path path : CollectionUtils.asIterable(toDelete)) {
			Files.delete(path);
		}

		oldBinaries.clear();
	}
Look for new sources, metadata, manifest file.  This will find files that need to be 
compiled and files that need to be removed.

<p>If files had errors last time, haven't changed, and no new requirements are available, 
remove them.

@param writer for reporting status to user
@throws IOException while accessing manifest file
@throws OSGiException while parsing imports
Ghidra/Features/Base/src/main/java/ghidra/app/plugin/core/osgi/GhidraSourceBundle.java