Changelog
- Add migration 047 with shop_definitions, mall Tag/Description/SortOrder on shops, and exchange_shop_goods/costs/purchases
- Build Shop.dat, exchange_shop_goods.dat and EMoneyShopV2.ini catalogs (kinds 8-10) in ClientCatalogService
- Initialize ShopCatalog from the same rows so server validation matches what the client shows
- Add MsgExchangeShopGoods (2441), MsgExchangeShop (2442) and MsgExchangeShopBuy (2443) with item-for-item purchases
- Route /reload shops and the console reload through ClientCatalogService.Reload
- Cover the shop catalog builders and exchange purchases in ShopCatalogTests