edit_distance and edit_alignment implementations moved to detail