max function
refactoring: extracting vterbi initialization
refactoring: extracting dynamic programming
refactoring: extracting path
viterbi's dynamicProgramming method doesnt use vars
refactoring: extracting p(x)
viterbi doesnt use vars