We sure love the ATmega328 here at Tronixlabs, and we use them a lot for our own projects. The microcontroller has plenty of GPIO, Analogue inputs, hardware UART SPI and I2C, timers and PWM galore - just enough for most simple projects. When we need to go small, we use a Pro Trinket 3V or 5V, but if you want to have USB-to-Serial built in, we reach for an Adafruit METRO Mini.
METRO Mini is the culmination of years of playing with AVRs: Adafruit wanted to make a tiny, breadboard-friendly development board that is easy to use and is hacker friendly. Metro Mini can be programmed with the Arduino IDE (select 'UNO' in the boards dropdown)
The Metro Mini comes as a fully assembled and tested board, with bootloader burned in and also a stick of 0.1" header. Some light soldering is required if you'd like to plug it into a breadboard, or you can solder wires or header directly to the breakout pads.
Mac & Windows People! Don't forget to grab & install the FTDI VCP drivers from FTDI and the SiLabs CP210x drivers from SiLabs to make the COM/Serial port show up right! The default drivers may not support the interface chip!