They can't charge and don't want to charge because it's their belief that software should be free of cost too besides free of charge. Look at debian community. It has grown so large and is becoming more and more popular and they'd like to rather stick to GPL then accept proprietory licenses. Me for one too believe open and free softwares(see Free Software Foundation's site or GNU's site for definition of freedom), are more accpetable then proprietory ones.
Why is a big thing to explain. if you have time read
Eric Raymond's Cathedral and the Bazaar. It explains a lot of things. And you need not agree with all whatever he's written.
I am not saying make yahoo as open source protocol or something, just that don't make it difficult for other clients to use yahoo protocols.