gstlal_io_changes: change internal structure of gstlal hdf5 files
Essentially, this merge request changes some of the internal structure of GstlalHDF5ClassifierData.retrieve_triggers()
to deal with the change in hdf5 structure for gstlal features. Instead of having groups in the form channel/rate/dataset, it's just channel/dataset, where the rates are all preaggregated upon writing gstlal features to disk.
The reason for this is that because of the recent changes in the feature extractor, the templates for each frequency band are not necessarily contained in that frequency band anymore (if a template could be aliased, it is moved to a higher sampling rate). I also found some bugs on how gstlal features were written to disk, and I made this change so that the i/o footprint is smaller on both the iDQ and gstlal sides, since on the iDQ end they all (the different frequency bands) get aggregated anyways so it didn't make much sense to store all the frequency bands separately.
Should be a simple 1-commit change, with io.py changed to allow preaggregated features, plus a change within test_io.py to update how features are stored within the hdf5 files.