[perl #115928] a consistent (public) rand() implementation

Based on Yves's random branch work.

This version makes the new random number visible to external modules,
for example, List::Util's XS shuffle() implementation.

I've also added a 64-bit implementation when HAS_QUAD is true, this
should be significantly faster, even on 32-bit CPUs.  This is intended to
produce exactly the same sequence as the original implementation.

The original version of this commit retained the "freebsd" name from
Yves's original work for the function and data structure names.  I've
removed "freebsd" from most function names so the name isn't an issue
if we choose to replace the implementation,
revert config_h.SH changes, now handled by Configure
[perl #115928] Configure now selects our internal drand48()
[perl #115928] we don't use drand48_r or random_r any longer

Removing this should mean that metaconfig will remove the units from
the built Configure