The minimum plan for smartphones used to be 2GB, but when I got my GNex there was a deal that you got 4GB for the 2GB price (not sure if it's still there). I think 2GB would be plenty. I know in stock android I can set a data amount where it will warn me, and another amount that once reached, will disable any more data usage until the next billing cycle. I've never gotten close to 4GB though.
I'd go with the S4 since it's newer and will probably feel faster for longer, but I'm a gadget junky. I'd also flash something based off of stock android like CyanogenMod or AOKP, so I'm not the best person to answer that one.
Also, there is a google maps navigation app that is free, you could try that out instead of Waze too (though I think Google bought Waze recently to enhance their own navigation app).