rename hmm result to viterbi result
pull up viterbi logic to trait
remove viterbi from HmmModel constructor