this should be a close to fully functional GMM - I want to talk more about computing the covariances in the maximization step.