POM: bump to pom-imagej 2.6

This fixes several version property errors.
UpdaterUserInterface: add TODO reminder

We should reference Java AWT classes from any core public API.
Add project license

Generated using:
   mvn license:update-project-license
Merge branch 'upload-fixes-core' (early part)

Let's just get this part merged already. It is supposed to start to
address the many updater issues listed in
https://github.com/imagej/imagej/issues.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Update to pom-imagej 2.7

This also makes the necessary code changes to accommodate
imagej-common 0.5.0.
Bump to next development cycle

Signed-off-by: Curtis Rueden <ctrueden@wisc.edu>
Move InteractiveTestDrive to the correct location

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Move InteractiveDiffTestDrive to the correct package

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Add an API to ask whether update site information has changed

When following/unfollowing update sites, we want to store that
information even when the user quit the updater without updating the
respective files. To this end, let's be able to tell whether we need to
write db.xml.gz at the end of an updater session.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Retain order of overridden update sites

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Keep record of overridden update sites intact

Even when reading in db.xml.gz files from custom update sites, keep the
record of the overridden versions from shadowed update sites intact,
just in case we have to remove an update site (and unshadow the
overridden versions).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Do not complain when dependencies of obsolete files are removed

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Add an API to remove update sites properly

When removing an update site, we really *need* to unshadow shadowed
files... otherwise, surprising things start to happen, such as uploading
incompatible lists of superseded previous versions.

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Add a test to verify that plugins are unshadowed upon unfollowing a site

When deactivating an update site, we really want to make sure that the
formerly shadowed metadata becomes active, so that uploading to a formerly
shadowed update site will work (and not lose a ton of information about
previous versions).

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Avoid using obsolete FileUtils.matchVersionedFilename

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>
Avoid using deprecated AppUtils class

Signed-off-by: Johannes Schindelin <johannes.schindelin@gmx.de>