A Bayesian Approach to Learning Hidden Markov Model Topology with Applications to Biological Sequence Analysis