Guard against null services in IOPlugins

It can be the case that an ImageJ context is initialized with an
IOService, but not e.g. a DatasetService or TextService or LUTService.
In those cases, the corresponding IOPlugin needs to fail gracefully
rather than throwing an NPE.