Hidden Markov Models for Bioinformatics