This is the first time I've heard about AMI's - I was under the impression that Amazon just sold you the hardware and it was up to you to handle the rest.
If I wanted to buy a small instance to start which AMI should I choose to have a run of the mill Rails stack?
For a simple Rails app any of the Debian-based systems would suffice, and Ubuntu 12.04 LTS is particularly high-quality.
As for cost, there are licensing and support fees. By using such AMIs you are allocated support resources, eg: opening tickets, receiving support via personal QA assistance.
The AMIs that cost merely have an additional cents-per-hour charge.
AMIs are kind of hard to avoid if you manage your AWS through the web console - create a new instance and the first thing that pops up is "choose an AMI".
If I wanted to buy a small instance to start which AMI should I choose to have a run of the mill Rails stack?
Also some AMI's have a cost? How does that work?