[markov_chain] Clean up example

o formatting
o plot works on Ubuntu 12.04
o 10% faster with in-place array modification
[markov_chain] _get_log_rho_metropolis_hasting -> _get_log_rho_metropolis_hasting*s*
[cluster] move GaussianMixture to separate module
[tools, markov_chain] '== None' -> 'is None'
(wip)[cluster] Add VBMerge algorithm, numerous bug fixes in GaussianInference

o initialization uniform: alpha wasn't initialized but update prematurely
o better way to set initial means
o nu update had extra +1
o log rho update in separate method,
o use math.log instead of np.log to avoid accidental broadcasting.
  Since it doesn't check for array sizes, it is slightly faster, too.
o proper outer product in _update_S

Todo:

o fix Gaussian inference test case
o lots of todos in variational.py
o test VBMerge prune() with lots of initial components