SmartConfigure and SmartUnPack have got smarter! The full descriptions of what they now do is in the apt-pkg/packagemanager.cc file.
The short version is that they will both put the system in a state where there operation can be achived, this involves calling
themselves and each other recursively. Because SmartConfigure can now configure a package and all its dependancies itself, there is
no current need for DepAdd (at least in packagemanager.cc), SmartConfigure also performs the function of the short lived VerifyConfigure
as it checks through all the dependancies before performing configuration.
Another change is to use the ConfigureAll method in OrderInstall to clean up any packages left unconfigured during ImmConfigureAll.
This is necessary to inprove the safety of ImmConfiguration and because of the new SIGINT functionality of dpkgpm.cc relies on no
packages being left unconfigured between pairs of dpkg calls. While writing this commit log, I have realised that the SIGINT stuff
is a prototype and not ready to be used yet as I have only tested it twice.