I'd wait for the 6 if you can. The major carriers all seem to have the 5s for $199 with a contract or varying monthly payments with Edge, Next, or T-Mobile's Uncarrier (T-Mobile's is for $24 months, basically like a contract).
If you decide to sign a contract and not do a payment plan, then you need to look at the cost of service for however much data you want. Only T-Mobile and Sprint still have unlimited data available. Verizon has 1 or 2gb for a single line (or more for a Share Everything plan which can have one line), and AT&T only has one 2gb single line plan. Both will charge for going over. I couldn't figure out Sprint's plans, to be honest. The Framily plan has 1gb of data per line. T-Mobile has 1gb, 3gb, 5gb or unlimited. The nice thing about their plans is they don't charge if you go over; you're just throttled to 2G speeds.
So it depends on how much data you use. Also consider coverage where you live and work. T-Mobile can be a good deal, but their coverage in some areas still isn't as good as AT&T or Verizon and vise versa.
----------
IMO if I had to pick a single line 2-year subsidized contract I'd probably go with Verizon's $60 single line plan with unlimited talk/txt + 1gb of data.
Of course you will have others saying "don't do a contract!" but that's not what the OP is asking... 😉
I like Verizon, but 1gb isn't much, especially if you don't have a lot of wifi access! I'm on a Share Everything plan with 6gb of data.
My boyfriend has T-Mobile and pays $70/month for unlimited data (pretty sure he got to keep it when they changed the pricing) plus whatever the monthly payment is for his iPhone 5.
If I were to pick a single line plan today, I'd probably go with T-Mobile since they don't charge if you go over your data allotment. 3gb would probably be enough though since I have wifi most places I go.