A data structure for recovering the alignment

Here we implement a very simple data structure for holding backpointers.