Hi John,
I've done something remotely similar to what you're trying to do
using an Atmel ATMega8 (now getting obsolete- but more recent replacements will work).
I bought myself a USB<->RS232 cable and hooked up the USART of the AVR
to a FT232 chip to guarantee the right signal levels. At few dollars
for the USB<->RS232 cable, you will not only save yourself most of the headache involved with trying to get USB working on the uC side,
but also guarantee that drivers on the computer side aren't an issue.
Having the hard part sorted out by the USB-to-RS232 cable seems
by far the simplest solution to your needs.
I did a USB MIDI interface at some point. It did work, and with
slightly different firmware it would be recognized as RS232 port
instead. I basically ported it to ATMega8 based on this project:
However, it was a quite painful process to get it working.
I'm assuming that the 16 ports you want are to control 16 lights
rather than to control 16 virtual RS232 ports over 1 USB device?
Best,
Marc