From a business perspective, if I have to pay developers to go in and recombine code on pages they've already been paid to work on, it is "redoing." It doesn't matter if the code is being copied and pasted or re-written from scratch. It costs the same amount of money. I can upgrade Expression Engine myself without having to write a bit of code because the architecture was designed for non-technical people. That doesn't cost anything because I can do it on my lunch hour, without having to post questions or pay a developer.
What you have here is e-commerce, for businesses. If you're wanting to move forward into a paid product, or be more successful getting donations, you'll want to consider who your customers are. I have to justify every penny I spend and I didn't expect to spend any more upgrading the software.
The fact you've had to spend as much time describing the upgrade process to me could be seen as an indicator that it needs to be simplified.
I'm not saying this to be critical of your work, I'm saying this to help you out. You've got a good product here, but in the future you may want to reconsider how much time and money your customers may unexpectedly get into when they need to upgrade to a newer version.



