Graph alignment goodies using pairwise hidden markov models

Extension of Jason Pell's work, depends on (or incorporates) #276 
should this be done before merge?