random: improve gegl-random implementation

- introduce a GeglRandom structure instead of accessing the LUT each time
- make a larger cycle for the seed
- avoid segfault when a negative seed is given
- use g(u)int64 instead of long to avoid plaform-dependant behavior
- make opencl and operations follow that api change
- build the GeglRandom structure in the gegl-chant machinery when using
  gegl_chant_seed
- make sure the pointer gegl_random_data is 32bits aligned when used with
  CL_MEM_USE_HOST_PTR
tests: add a test case for noise-hurl