The Amnesty part seems like a pretty good compromise, although the $5000 dollar fine is pretty ridiculous.
I'm definitely not a fan of the guest worker program, however, they tend to create an underclass of people similar to the ones found in Europe which have for the most part completely failed.