Refactoring of handling of PDT in grib save code

This PR (hopefully) simplifies the code layout in `iris.fileformats.grib._save_rules` for the handling of he product definition template. It adds functions for each PDT number and removes some layers of complexity.
This class name needs to change! Suggest `Test_set_fixed_surfaces` or perhaps just `Test_fixed_surfaces` as the concept of non-hybrid surfaces has been removed from the code being tested.