I've done something similar using a logic-level N-MOSFET. Pressing a button puts a gate voltage on the MOSFET, turning it on and supplying power to the PIC (you could also wire the button across the source/drain of the MOSFET to turn on the PIC). The PIC then sets an output pin high which is also connected to the MOSFET gate (through a diode and resistor) to keep it on. When the PIC wants to turn the power off, it sets the output pin low, turning off the MOSFET and the power.
Current drain in power-off mode is below the minimum my multimeter can read, so it's less than 0.1µA.
The PIC16F84 doesn't need a RC circuit on the reset pin for power-up, unless the rise time of Vdd is too slow. Just tie MCLR to Vdd through a 10k or so resistor.
Another benefit to using a MOSFET-based power control over sleep mode is you can also power down any supporting circuitry in addition to the PIC. That is, LED drivers, the current-hogging 7805 regulator, any other ICs/circuits you have connected to the PIC, etc.