Support scaling of vertical levels in Grib save.

The scaling calculation may be over-complicated, as @esc24 already noted
(it _could_ just assume all input values are 'float', and implement a uniform precision requirement)
It's done now though, and seems to work...