Finding peaks and estimating cell population sizes in multi-dimensional flow cytometry data
There are quite a few algorithms developed for the automatic classification of multidimensional flow cytometry data, you can see a (not so recent?) review here: http://www.nature.com/nmeth/journal/v10/n3/full/nmeth.2365.html. In your case, you are interested in the unsupervised methods, since you do not have data from single populations (which would provide you "labels" associated to each sample), as I understood. 

In other words, if you have your data set as a matrix of 5 million samples (cells) with 14 dimensions (FC values) each, then you are looking basically for algorithms that will do a clustering of the samples into groups. By the way your description of each sample belonging to a multivariate Normal distribution leads to a Gaussian Mixture Model, which can be estimated from your data using e.g. the scikit-learn library for python: http://scikit-learn.org/stable/modules/mixture.html