You could also just put it on the breadboard and connect the ground, reset, rx and tx to the arduino board that way you dont have to keep putting the chip in and out of the breadbard and arduino.Also if you are doing anything time related you are still going to want to use a crystal and you'll need a bootloader meant for external 8mhz. If no time, then nevermind.
FYI, uploading to an 8MHz ATmega328P works fine for me, using an Arduino Uno with an ATmega8u2 and the ATmega328P removed. The target chip on a breadboard has an 8MHz version of Optiboot, using an upload speed of 57600, and was powered by 5V from the Uno.
How do I set the upload speed to 57600 or is that all handled by the boot loader?
It's in the boards.txt file. In the IDE, as long as you pick one of the 8MHz boards when burning the bootloader and then also the same one when uploading a sketch, you shouldn't have to set anything.