Making a on/off/restart button or switch

Sounds like a very 'dumb' kind of exercise to me.

The on/off for the power is just a power switch.

The program restart is a reset of the hardware. The reset pin needs to be pulled low and then released, just look at the circuit for any arduino board.