There are several points IAAF has to discuss about the change of nationality.
1) Best opportunities of life for athletes of poor Countries.
In sport as Soccer, Basket, Volleyball, players can move to teams giving them very rich contracts, FOR PLAYING IN LOCAL CLUBS in national championships, or interntional championships.
In these disciplines, money comes from the activity of clubs, not from the activity of National Teams.
This means that we can have Messi (Argentina) in Spain remaining with his original nationality, the same for Ronaldo (Portugal) in Spain, for Higuain (Argentina) in Italy, for Neymar (Brazil) in Spain, for Ibrahimovic (Sweden) in UK or, in other sports, for Gallinari (Italy) in US.
Therefore, in these kind of sports players don't change nationality, because don't have any advantage to do this.
But, in sports where there is not any economical advantage from Clubs (such as track and field), especially in Countries where Clubs practically don't exist, it's normal, and FAIR, that athletes look at the possibility to earn some money, AND THIS OPPORTUNITY CAN BE GIVEN BY NATIONAL FEDERATIONS ONLY.
So, under the INDIVIDUAL point of view, to change nationality is totally fair, and we can accept this trend.
2) Opportunity to compete in the global international Championships (WCh and Olympics), for athletes among the best in the World, but not able to be selected in the Team of their original Country.
Personally, I look at Olympics or WCh not as a competition FOR NATIONS, but as an INDIVIDUAL competition. After Olympics, everybody knows who is the Olympic Champion in one event, and in many cases doesn't know where is he from. There are cases of athletes winning medals with one Country, and after some year winning again with another Country, and what is important is that THEY were the champions.
Individual sports where there are limited numbers of participants in any events but at the same time there are official limits for being allowed to be entered (athletics, swimming) don't offer to many athletes, among the best in the world, the opportunity to compete and to look for a medal.
So, not only for money, but also for having this opportunity, many athletes chose to change nationality, going to some Country where they can have the certainty to be selected (look Torrance changing to Peru').
3) On the other hand, the participation of strong athletes coming from Countries that are the main poducers of quality in some event (like Kenyans and Ethiopians in middle and long distances, or Jamaicans in sprint) in Area Championships different from their original Area (I had already years ago this convinction when I was the head coach of Kenyan-Qatari athletes, when we went to compete in Asian Chapionships) has the clar effect to produce a loss of motivation in the local athletes, becoming one of the reasons for the loss of interest in their sport at local level.
Which possible solutions can we have ?
In my opinion, athletes can be free to change citizenship, of course respecting precise rules, when they want, also because, under legal point of view, there is no system for stopping the change of citizenship, if the rules of the new Country allow them to change.
Put in your mind that an athlete is a normal citizen, and, if I want to become Australian from my previous Italian nationality, the only organ which can decide is the Australian Government. When I'm Australian, immediately I have the right to compete for that Country, if I am a normal person.
This means that, because a rule cancelling the sovranity of every Country in this materia can't exist, the decision of give a new nationality to the athletes doesn't depend on the IAAF, but on every single Government (and in any Country there are different rules regarding this issue).
So, what IAAF can do ?
IAAF can only control what happens under its organization. For example, deciding a period of years during which athletes can't represent in any international competition the new Country, after the last date representing their old Country. This rule already exists, but under the kingdom of Lamine Diack was frequently buypassed in change of bribes (example : in Turkey, William Tanui Biwott was allowed to run for the new Country in World Indoor Championships in Istanbul starting on 9th March 2012, when his official change of citizenship was on 8th June 2011, only 10 months before, while the rule ask for one year in case of agreement with the previous Country).
At the end, my proposal is as follows :
A) In all the Championships involving ALL THE WORLD (WCh, WCCCh, WHMCh, Olympic Games) the athletes who changed citizenship CAN COMPETE IMMEDIATELY, because we need to give them the opportunity to reach their best individual result.
B) In all the Area Championships (including the Area Games, such as Asian Games, African Games or Panamerican Games) they MUST BE OFFICIALLY BELONGING TO THE NEW COUNTRY FROM NOT LESS THAN 6 YEARS.
In this case, local athletes can have their room of important results (I think that, for example, all the real European competing in European CC Champs today well know at the moment don't have any chances of medal in WCh) in one activity that can represent the MOST IMPORTANT TARGET for their value.
In this case, we can respect the right of every athlete for showing the best value in global competitions,but at the same time we can protect the motivation of local athletes, maintaining for them an important goal, represented by the Area Championships, that in this case can again grow as value, and can produce new interest in athletics.