Moving files is a filesystem process. LR must use the filesystem to facilitate the process. The file system does not allow "undo" The only thing LR could do is move back. IMO this would require an unreasonable and unnecessary overhead to track files moves.
Moving a file around is not just a database operation, like most other operations that happen solely inside LR. Undoing it really requires a lot of code, and no one can be sure the file will not have been moved again outside LR when you try to undo it.