Class TranscriptionAligner

This class aligns a label file with an XML file in MARY ALLOPHONES format, modifying the structure of the XML file as needed to
match the label file. After calling alignXMLTranscriptions(), it is guaranteed that an iteration through all PHONE and BOUNDARY
nodes of the XML file matches the label file.

distanceAlign

This computes the alignment that has the lowest distance between two Strings.
There are three differences to the normal Levenshtein-distance:
1. Only insertions and deletions are allowed, no replacements (i.e. no "diagonal" transitions) 2. insertion costs are
dependent on a particular phone on the input side (the one they are aligned to) 3. deletion is equivalent to a symbol on
the input side that is not aligned. There are costs associated with that.
The method returns the output string with alignment boundaries ('#') inserted.