"UPDATED"
I know I can do a hard reset on the Leonardo by opening the port at 1200 baud and then closing it. That is similar to pressing the reset button which reloads the boot loader and takes a few seconds to occur. It then starts the sketch at Setup().
What I would like to do is a soft reset that simply restarts the sketch at Setup() and do that from a PC using the serial port without having to load the boot loader.
Good question. I guess I should really figure out if it is absolutely necessary.
You also gave me an idea with your first reply. I could send a a reset command in the form of data from the PC that would cause the Leonardo sketch to rerun Setup().
Re-running setup() is NOT the same as resetting the Arduino. Once again, you need to explain what you are trying to do. When performing a hard-reset, the bootloader is the first thing run. You can't change that.