Especially automatic refactorings...
If you look at real code, often the main reason why this routine was added to this file... was that the programmer worked in this file last.
Is that a Good Reason? No it's a bloody awful reason.
An automated tool should be able to look at the network of declarations, definitions and references and work out which module each thing should be in.