1) Throttling was always in the TOS for the unlimited package. Also they are under zero obligation to allow customers to keep it once they move into a new contract, i.e., upgrade to a new phone. I agree, they handled it awkwardly and haphazardly, but ultimately, they never cut off anyone's service, just slowed it down. Those of us that pay $30 for "unlimited" (reality: 3GB 3G plus unlimited 2G) are still getting a better deal than people paying $30 for 3GBs and done.
2) I agree iPhone should be unlocked after contract is signed, or at least 6 months in to it. However, NO carrier will unlock a subsidized iPhone. This is an Apple restriction, not an ATT one.
3) Do you seriously believe the other iPhone carriers "behave" better? Verizon is more expensive for the same and Sprint offers "unlimited" but has limited places to use it in. I'm not an ATT booster, I think all CellCos are crappy. But let's be fair about it and not pretend one is an angel and the others devils.