I concur with these findings. m1.smalls are nearly worthless. c1.mediums are roughly twice the hourly cost, and are much faster and more stable when it comes to high-cpu tasks (like an application server).
It helps a lot to up the limit of open files in the smallest instance. I've not been able to produce enough load to max out the smallest instance running lighttpd and serving small files from ramdisk. 10.000 simultaneous requests and the server is still pretty happy. For application server though the medium is much better but for serving static files, el-cheapo is enough.