Fix the wrong size of the array of gradients

 - s_gradients array was specified of size 12, and used with a modulus 12,
   but is only filled with 8 gradient vectors !
 => if the rest of the array is filled with zeros,
    this degrades the variety of the noise produced

 - I believe the error comes from having converted a 3D implementation,
   where 12 gradients are used (for standard implementation)
 - And by the way, using a modulus 8 is much more optimzed by the compiler :)