GRIB support for saving time increment for time aggregated data (PDT4.8)

This PR enhances the existing code for saving data in PDT 4.8. As well as refactoring the code it adds support for parsing and saving the cell_methods on cubes to determine the interval (e.g hourly or daily) of the data that has been summed/averaged/...
This logic seems to be at odds with that in '_cube_is_time_statistic', just above, where the coordinate name is allowed to be anything 'time like' :  I think that implies that we do need a 'time' coordinate, but the coord named in the cell_method can be something else, as long as 'time-like'.