SCIFIOITKBridge: improve null reader handling

Updated null reader and null id handling.

* executeCommand: was checking if the reader was null before calling
  getSeries, but wasn't checking if the reader had a valid ID. Now
  both are checked.
* createReader: the current file name was being cached.. if that value
  was null, then the reader was created fresh and returned. However, the
  cached file name wasn't updated at this point.. furthermore, the
  cached path starts off non-null. To simplify things, the check for a
  null cached path is consolidated with checking if the reader's current
  id matches the passed path. If not, just go through the standard
  process for reader creation.

These changes should limit the opportunities for null values to pop up
when unexpected.