both maximization algorithm and q estimator need refinement

added ErsatzEstimator as a pretend working q estimator in order to test
the maximization algorithm, which was outputing odd values.