Add reopenFile() as an API method in IFormatReader

This allows any underlying file handles that are expected to be open when
setId returns to be reopened.  This handles the case when a reader is
initialized via memo file, or when close(true) was called.