The answer is: A. The federal government
The federal government can determine the criteria of immigration depending on what the nation currently need. (the president would have the highest influence in determining the criteria).
For example, when the nation need large number of labors, the federal government could make the criteria for immigration become a little bit loose so many people can come in. If the nation need capital injection, the government could change the criteria based on personal net worth.
Fish eat fish and donkey eat donkey need points
This gave america more culture such as jazz in the south and more people came to america which mean't more jobs, which mean't more currency for america. Hope i helped!