This might not be a current possibility but
what about a swap and or difference option when a file already exists when you go to save the current.The "swap" could simply move the the already existing file to a temporary location, renaming it, and allow for swapping back to the original. Also what I mean by difference is an option to see how exactly the new file would differ from the old one, line by line of course. I think these would be good additions personally, especially if you're testing or comparing code.
Thanks for any feedback in advance,