Obvious comments, mostly:
Re: removing Java, I assume the intention is to remove it just as any other bit of code included in 10.6 but not in 10.7 is removed. I hope there's some logic that tries to preserve it if you've been using it (e.g., if you have Java-utilising apps installed) and that it just didn't work here, but can't claim to be particularly confident. However, there are lots of reasons not to include software in an OS distribution other than politics. Apple's defence that if they make it an OS feature then they become responsible for maintaining it and that nobody else ships it as an OS feature is reasonably convincing, though you're probably right that politics was involved.
Re: Versions, as already pointed out, this not only ensures that what is on disk is kept up-to-date with whatever edits you've made, but also retains all older version for browsing. So there's no "too late!" in your example — just scroll back through the revisions and find the one you like. Though I'm unclear as to what the behaviour is when exporting a file to an OS that can't do revisions, such as when you email a file, copy it to a flash drive, use an external server, etc.
While I agree that it'd be nice to be able to turn off restore permanently and wouldn't be surprised if Apple added it (after all, they gave us the opaque menu bar back eventually), I'd be surprised if Versions becomes an optional feature. If anything I'd expect it to be baked into the filing system proper at a later date, rather than handled via a SQL database that is itself a file.