Hi Steve -
I've attached two files, import.zip and www_import.zip. They each contain a folder called import.
Extract import.php to /reason_package/reason_4.0/lib/local/scripts/
Extract www_import.php to /reason_package/reason_4.0/www/local/scripts/
From there, you can visit /reason/scripts/import/wordpress.php to try the wordpress importer. It handles a bunch of stuff. I built it for a particular site and aimed to make it work for others, but it doesn't necessarily understand everything that might be found in the wordpress xml format.
If you dig into the code a bit, I think you'll see how the general framework could be adopted to something else, like a Drupal import. Basically, the idea with the import framework I've attached is that we define a bunch of possible jobs in an abstract way, and then create a script which runs those jobs. The jobs themselves are run by an ImportJobStack class, which is able to cycle through a set of jobs, and push those that cannot yet be run to the bottom of the stack. In this manner, one job can depend upon the results of some other job, but you don't have to overly concern yourself with the order in which things take place when writing the import script. I've created a form to gather data, but the meat of the actual setup of jobs into a JobImportStack, which could be done in simple procedural script, can be seen in the process method in the file reason_package/reason_4.0/lib/local/scripts/import/wordpress/SetupForm.php.
The jobs I've created, such as EntityCreationJob, are right now defined in the file reason_package/reason_4.0/lib/local/scripts/import/jobs/basic.php. You could likely reuse these jobs if you use this framework. You'll also likely have to write some more.
I'd be very curious to stay posted on your progress with this. It would be nice to package this up a bit more cleanly and with more documentation and put some importers into the Reason core.
Nate