Fix logic error in MSIDset.interpolate

```
        # Ensure that tstart / tstop is entirely within the range of available
        # data fetched from the archive.
        max_fetch_tstart = max(msid.times[0] for msid in msids)
        min_fetch_tstop = min(msid.times[-1] for msid in msids)
        tstart = max(tstart, max_fetch_tstart)
        tstop = min(tstop, min_fetch_tstop)

        self.times = np.arange(tstart, tstop, dt)
```

Should set times first and then filter within `max_fetch_tstart` to `min_fetch_tstop`.  Currently one expects that the output time sequence will a subset of the user input `start + N * dt`, but it isn't.  This caused a problem in kadi.events.models.Scs107 and results in the hack of adding time to the tstart.  (That hack should be removed when this is done).