Duplicate file handling

Ok, when I am copying or moving files from one directory to another and one of the files has the same name, Explorer asks me if I want to overwrite Version A with Version B. What frustrates me is that Explorer isn’t smarter. What I’d like for Exporer to do when it finds a duplicate file name is:
1. Do a file size check, if the same go to 2
2. Do a CRC check, if the same go to 3
3. Do a byte for byte comparison, if the same, don’t bother asking. No copying necessary. If moving, you can just delete the Move From copy.

If the checks fail at any of these steps, then prompt asking what to do. Having a diff button right there would be nice too.

The only question would be what to do with different timestamps. I don’t really care, but I’m sure some people would.