Dialogue merging

This is the same method that I've shown earlier, but optimized with a lookup map. Merging Tribunal.esm and Bloodmoon.esm now takes ~60 ms, as opposed to ~1 sec. The side effect is that ESM::Dialogue objects are now slightly larger.

For the first ESM file, no reordering is done: it is assumed that the DialInfo records were written in the order that the linked list dictates (OpenCS does this, right?)