I think that the US, Canada, and Mexico should have an open border and employment program. Those who are US, Mexican, or Canadian citizens should be able to get full employment rights and wages in the country in they are employed in. Taxes from such work go to the country of origin the business is in, and abide by the employment laws of the country. Also, and this might be harder to do, is that Canada, Mexico, and the US should have a single currency, much like the Euro in Europe.
Economically it would be a great boon for all countries involved, in the long run, and we wouldn't have the hassles of who is illegal or not when it comes tot he work place.