gegl: keep track of valid region for mipmap levels
replace many uses of double precision float with single

For computing cubic / linear weights, we do not need the double binary
floating point precision to our "native" output format which is 32bit float.