Actually, there's several ways to go about doing this.
I cancelled my line with sprint because I had less than average service and many dropped calls, went to verizon, they jerked me around and charged me crazy fees, cancelled with them and went back to sprint. I didn't really pay to get out of sprint into verizon.
If you call their customer service line and ask for the cancellations department, you can speak to a cancellations person in the U.S. If their cancellation department doesn't do what you want, asked to be transfered to their claims escalation department (they're also americans). They should be able to help you cancel all lines for lack of good service. Now, you might need to call in more than once and they'll offer you an air rave (a mini cell tower, to summarize what this is), which doesn't work at all (and in some instances, makes it worse). However, after a little perseverance and some 'elbow grease' working them out, they should let you out of your contract with no fees, for all three lines.
Now, if you do have very good service, good luck trying to get them to help you out. I have found, however, that if you are nice to them, they'll do whatever it takes to help you. If you get frustrated, all they'll do is just hang up on you. Never ask for a supervisor....they'll just give the phone to their buddy on the next seat or tell you they are all 'busy'. Always ask for the claims escalation department as now you are getting to the real 'corporate people'. They too get monitored and if upper mangement/corporate sees you call in for the same issue more than once, they don't like it and they get reprimanded.
Try that and see how it works. Worse comes to worse, and I am in no way advising you to lie or be dishonest, if you ever move somewhere where there's no coverage, they have to let you out of your contract with no penalty as they can't provide you with service, even if it is a move that you are making all on your own (not for business or educational purposes).
Good luck and I hope this helped.