Does anyone have a cool macro for swapping windows?

Nothing cool, but, subject to the limitations pointed out by @griffman (XY position is generally swappable, size can be partly out of reach with some apps) there is a rough draft of something here: