The reason is also pretty obvious when you think about it.
Now - I will add - I'm guessing a bit on how IAG have structured the below but it's the only way that really makes financial sense.
BA now have to pay to issue Avios - albeit within IAG - but they still have to pay. There's a company that lies at the heart of the avios system which does all the issuing of avios and redemptions. So if BA give you avios for something - they are paying Avios to issue them to your BA account. When you redeem them - BA earn money from Avios in return.
Now it's all wooden dollars inside IAG as a whole - but it affects the accounts of BA and Avios.
Previously - BA issued their own supply of Avios. There was only the cost of the liability on the books (really) for BA to worry about and since they know that whatever %age will never get used ... it's neither here nor there to be chucking 10k out for a dodgy seat.
Now that 10k has a value that goes out of their account and comes into Avios' and in these days of cost cutting that's a cost that can be avoided.
Now - this also gives BA an incentive to issue more redemption availability. This means that BA would *like* to earn from the redemptions that Avios buy.