maybe the code is new, but the functionality is the same. I just take a look beyond the VM horizon. Those possibilties with publishing or unpublishing payment or shipping methods for countries as a more global function are implemented in a lot of shop systems. You can do that in OpenCart, Prestashop, Magento, CS Cart, Tienda a.s.o.. In Magento for example the shop owner can define conditions to publish or unpublish things like payment, shipping, rebate or something else with dropdowns in the backend. So you can say for example customers from country xyz are allowed to pay with cod but don't get rebate and the shop only shows DHL shipping for them or something else.
But it would be sufficient to be able to define or exclude countries for specific payment or shipping methods. Maybe the payment provider, who develops a plugin can include something in the source code, but what if I want to have something else? It should be the decision of the shop owner and not the decision of the developer of a plugin or module. I don't think that, like done in other shopping carts, implementing geo zones is necessary. It would be sufficient to implement something like a switch in the backend to control the visibility of some functions in the frontend. I am not a programmer but as far as I can see, VM has the necessary information if the customer enters the delivery address, to decide to show or to hide something during the checkout.
The shopper group is, from my point of view, not the right way to control shipping or payment functions.