I should point out that if you read that section of the article linked in the original post, you'll see that other countries require the same thing as the TSA is.
You raise some interesting points. Let me ask this question:
Do you think that if a foreign national should be preferred over a citizen?
I ask this, because I see a lot of it in my industry (IT). Workers from India etc. who pad their resumes, have credientials that are very difficult to verify, and flat out lie, are getting preference over U.S. Citzens, because they're willing to work for half of what a qualified U.S. Citizen would put up with. Or the opposite is true: the foreign guys are making twice what their U.S. counterpart is because they claim to be "better" qualified. Managers are then finding out that they have been hoodwinked, and because of the enormous investment in legal fees etc. that a company needs to pay to sponsor a foreign national's visa, they keep this under-qualified person in order to get an ROI.
I can agree with your point about temporary workers, but I think that those people looking for the "experience" of working in the U.S. should be reqiured to be upfront with hiring managers about their intentions to not become a long term employee.
I still feel that if you're planning on staying in this country permanently you should become a citizen.