Adding dpp-related methods to `Partition` class.

Adding three methods to `Partition` class for calculating properties of
Dirichlet processes: `get_dpp_expected_num_cats`,
`get_dpp_concentration`, and
`get_hyper_gamma_scale_from_shape_and_dpp_expected_ncats`.

Adding associated tests to `test_stats.py`.

Also, updating `README.md` to acknowledge that these methods were
adapted from functions in Tracy Heath's `DPPDiv` program.
Adding/Updating functions to `functions` module.

Simplifying `is_executable` function, and adding `which` function to
`pymsbayes.utils.functions` module.
Adding functions to `argparse_utils` module.

Adding `arg_is_executable`, `arg_is_nonnegative_int`, and
`arg_is_positive_float` functions for vetting CLI arguments to the
`argparse_utils` module.
Adding `dmc_dpp_summary.py` script.

This script calculates properties of Dirichlet processes. The goal is
for it to be a useful tool when choosing priors for the concentration
parameter of the Diriclet process.