x1. Improve the seeding for routines that use the LCG seed generator.
It can only generate 130,000 different initial states. We should
change it to provide 2^31 different initial states (this will also
prevent the high bits being zero). DONE - we now use a 32-bit
generator.

2. Make things work on 64 bit platforms. Sometimes we just need to use
& 0xffffffff on 32 bit quantities that are returned to the user where
we rely on 32 bit arithmetic, sometimes it is more complicated
(e.g. the Tausworthe generator relies on 32 bit arithmetic at all
stages). DONE, needs to be tested on an actual 64 bit machine though

x3. Add reimplementations of the Numerical Recipes generators, since
lots of people use those. DONE, for ran0,1,2,3

x4. Add functions for getting an integer in the range [0,N] or [1,N],
like rolling dice. Be aware that division might not make a smooth
distribution, and a small modulus might be correlated for some generators.
DONE, for [0,N-1]

x5. provide a RAND_SCALE precomputed scale factor for getting [0,1] In
numerical recipes they divide by (MAX+1) which we can't handle in our
current scheme. They also replace 1 by 1-eps where eps=1.2e-7. Yuk.
DONE

6. run the DIEHARD tests on all the generators, especially the ones we
are listing as "Simulation Quality" -- some of those are a bit old and
might fail one or two diehard tests.

7. Add drand48,   DONE
       NAG,       missing, gave up! 
       CRAY,      DONE 
       CDC 48-bit missing 

x8. Get the macros from the faster MT19937 generator and use them. We
need to make MT be the fastest of the simulation quality generators if
it is the default. DONE. It didn't improve the speed on other
platforms, so I just used the tricks which also worked on the pentium
(e.g. changing mag[x&1] to x&1 ? mag[1] : mag[0])

9. Send to M.Makumoto for review.

x10. Add random/srandom DONE.
