Feature/multi gp cholesky

Replaces #788 

From alyst:

The PR does 2 things

* Rearranges a bit the code for `multi_normal`, `multi_normal_cholesky` and `multi_gp` distributions, so that the textual comparison of these sources gives a better idea what parts are the same and what is different.
* Implements `multi_gp_cholesky` (distribution, tests, docs), i.e. the multivariate Gaussian Process with the Cholesky factor parametrization of the kernel matrix. As with `multi_normal_cholesky` it should have some performance, memory and numerical stability benefits.