Just a forewarning, S3 can be insanely expensive depending on how much media you have. I switched over to S3 and it was costing me $400 - $500 per month in bandwidth fees alone, for comparison my VPS is only $250 per month. I've heard that CloudFront can reduce the charges, but Cloudfront has it's own fees as well. Also, it was significantly slower for me. Currently, I host everything on a dedicated server and use cloudflare and it works great.