Text this: Hidden Markov Models for Natural Language Processing