Hello.
On the compatibility thing, maybe one thing to do could be a first iteration where edits are lost on version change. People could still keep the file but would only be able to see the edits at an eventual later time, once you commit to translate old revisions to a new one. (if you ever do. I'm a long time coder too and i totally understand your argument)
I do not see removing of edits as a problem on the long term anyway. It is pretty useful during the life of the project, to be able to go back and forth. Once the project itself is done and customer has its product delivered, there is little reason to need such a feature.
Saving steps would help most of us, i believe, just by the fact of feeling as if we never left the project and the confidence of being able to go back on last steps.. (don't most of thought "i really did sh*t tonight..." when waking up after a tiring night session?)
Being able to get back on projects made months or years ago would only be needed for a few of us.
All this is IMHO, of course.
Oh, and on the marketing side, it's a nice feature to brag about. ;)