Improve Hypergeometric CDF and PDF

Add test that demonstrates how the hypergeometric PDF sometimes returns
NaN when working with large populations and large samples.

Add a test to make sure the hypergeometric PDF agrees with the basic
implementation for a range of parameter values.

Fix documentation header formatting.

Add more advanced algorithm for the hypergeometric CDF.

Change hypergeometric PDF to use the difference in the CDF to work
better with large parameter values.

Reviewed-by: Trevor Norris <trev.norris@gmail.com>