Refactored HMM and thereby noticed and fixed the bug of not keeping enough state for trigrams.w
Fixed bug created by last 'bug fix' in viterbi refactor.
Added a state pruning heuristic to deal with the added complexity of running the corrected algorithm.