Two fixes: * The find-doubles operator was overriding the "dirty" element indices, so vertices were not being mapped correctly. * In some cases a vertex can be set to merge with a vertex that is also set to be merged, so added a loop to find the first unmerged vert in this case. Not yet working is the "First Last" merge option. Also made some cleanups and added comments in the array/remove doubles code.