Okay - so I thought about breaking down my patches into more manageable sizes then decided I'd start all over again and do it in much smaller pieces trying to concentrate on one class at a time and be more methodical about all the things I wanted to "improve". So here we have a few dozen small patches each of which changes very few things at any one time - typically one where I can help it. I started with Soldier. I've done Cell but won't post that until I get more feedback.
I would have posted to mantis but it seemingly has a habit of falling over....
Each is a unified diff of my repository generated using TortoiseSVN, developed in Eclipse with formatting set to K&R (or at least almost K&R seen as the guidelines don't quite match).
Also included is the svn log file detailing (briefly) what each diff does and the files it touches. What isn't included anything about why I've done any of the changes I propose. I can do and am happy to do so if in theory at least you're happy with the code. Most of this stuff is based on work by Herb Sutter & Scott Meyer (code quality) or Martin Fowler and other (refactoring). Typically I'm aiming to make the code more readable and more resilient. This is all small stuff to start with to encapsulate the class better - by removing access to internals through public member variables or friendship and to reduce compile dependencies by rationalising the includes.
The diff files are based on my repository and so file versions and file locations are not those of the UFO2000 svn repository. A quick search and replace or simple awk/sed script will do the trick to fix them to act as patches for a working copy of UFO2000.
Give me feedback and we can take it from there.