As of several months ago I do have a fully functioning WP Update tool.
It does back-up and restore to/from the host or a back-up site which you have ftp access to.
It does full update of your WordPress blog site. That's any plugins or themes as well as the main core and it does it all on auto-pilot from a database of your blogs.
It handles MUWP sites and single stand-alone sites and it runs perfectly for me.
I run it regularly to update my sites (about 20) and I can get a PDF report for each one independently so I am very pleased with the functionality.
At this stage it is only available for Linux machines which is not what I wanted.
Did I mention at any stage how hard it is to create a single tool which can be compiled into an executable for multiple platforms?
Python is an excellent scripting language to write in and there are may libraries to add in which make doing all sorts of tricky stuff possible and the code is cross-platform capable but.
To build for the other platforms you have to build on those other platforms which means that you have to have exactly the same libraries and dependencies on each of those platforms.
This makes it a lot more difficult to keep the source files consistent across those platforms and the chance of introducing bugs is massively increased.
Add to that the use of a scripting language makes it difficult to protect your source code from all but the most dedicated of hackers. Full protection is impossible but good protection shouldn't be.
After months of thought, testing, discussion in forums and with people with some knowledge I found two other programming languages which have cross-platform capabilities.
I tried both TCL/TK and Free Pascal. There are issues with both but, at this stage Free Pascal is winning. Mainly because I can compile a full executable program from Lazarus (the IDE for FPC) and I can compile for other platforms by changing the target within Lazarus so I am really using the same code for all platforms.
More testing is required yet but it is looking promising.
Yet again I need to learn a new syntax and this one is very different so it is taking a bit longer but I am encouraged by knowing that my algorithm and code does work correctly.
Once completed the Pascal based program should be faster and I can use threading to speed things up even more. I am still excited by the possibilities of this tool even though I have been working on it for over a year now.
How much longer? I don't really know but perhaps 6 months as I am only a part time programmer with a busy family life and only get to write for an hour or so maximum per day. Barely enough time to work out where I was up to last time.