Rework the Initialization of the `CriticalTable` class
Fix failing test in test_pdf_classes.py
by reworking the way that CriticalTable
instances are initialized.
Now, they take CDF and MLE arguments from the ProbabilityDistribution
class instead of name strings.
These arguments are functions that can be called directly from the CriticalTable
.
This eliminates a lot of boilerplate within the CriticalTable
class and concentrating all
probability distribution code within the respective ProbabilityDistribution
subclass.