algo_HMM.py --> Baum_Welch function

summation of mixture weights in each state are one.
Todo:
(1) check covariance matrices are always positive (Semi) definite -->
otherwise probability density function is degenerate.
(2) multivariate gaussians use diagonal covariances in the current
implementation.
(3) kmeans segmentation clustering for parameter initialisation.