> since the pic I am using has >2k codespace, PBP does the context saving? so only on pic's with <2k I need to worry about saving the context? do I need to restore it still as well?

Correct! You only need to Save the Context on chips with 2K or less.

The reason is because on chips with more than 2K, the Code Space is divided into several "Pages", and the PCLATH register may have to be set in order to GOTO the interrupt handler from the vector at address 0x0004. But if it changes PCLATH before the Context has been saved, then it will also change the W register that hasn't been saved yet. So PBP has to add the context saving BEFORE it jumps to the handler. (Clear as mud)

Those registers should ALWAYS be restored at the end of the handler, no matter what size the chip is.
<br>