Implement BayesianMarkovStateModel

Clear PR with squashed history for `BayesianMarkovStateModel`.

- [x] Implement sampler
- [x] set `BayesianMarkovStateModel` API
- [x] Add docs
- [x] Add example
Or store `transmats` as `(n_chains, n_samples_per_chain, n_states, n_states)`.  I guess it's slightly less convenient for most purposes.  OK I'm happy as is.