Tool: change how certain attributes are declared

This uses the new extensible key/value pair list of @Plugin, rather than
relying on the alwaysActive and activeInAppFrame boolean attributes
which were tool-specific.
CommandInfo: fix canCancel to use Cancelable iface

There was no need to rely on a separate cancelable Plugin attribute,
since the Cancelable interface already signals whether the command can
be canceled.
Previewable: migrate to imagej.command package

The only thing that can be Previewable is a Command, on the only classes
that use it are in imagej.command and imagej.core.commands, so it really
belongs in imagej.command rather than in the base imagej package.
FileObject: tweak javadoc and comments
ImageJPlugin: update javadoc for SciJava Common