The symmetrize work is now pretty much completed. I resolved the issues with BMLog (for undo/redo), and learned a bit more about BMesh’s internal structure at the same time.
There are more “nice to have” features that might yet happen for symmetrize. In particular I might experiment with more aggressive merging across the axis boundary to avoid small edges/faces in that region. For now though, it’s hopefully stable and usable, so I have merged the relevant commits into the main dyntopo branch.
Incidentally, since symmetrize is a BMesh operator in its own right, I will probably look at getting it into trunk separately from dyntopo. That will be after 2.64 is released, of course.
Also: I’d like to say a big thanks to all the people who have donated recently. It is much appreciated, and I look forward to “repaying” you all by getting dyntopo finished as soon as possible.