Added an option to have a preferred random number generator.

This 'preferred generator' is the one that will be used in some
tests and in the distribution generators that will be implemented
in a future.

The define must be a function that generates random numbers
(technically, it can be anything that can be assigned to an
unsigned int). So, any of the `*_rand()` will be enough.

There's a big problem with the approach I have taken for this,
mainly because I still don't know how to do it better. If
you choose not to use all the generatos and you choose as a
preferred generator one that isn't activated... well, let's
say that it won't work.