refactor pp_ref

similar to commmit b3cf48215c

-removed:
  -4/-8 pop on SP
  +4/+8 push on SP
  PUTBACK
  1 non vol register save/restore (TARG not saved across the sv_ref())

TARG is not computed if the SV isn't a reference, so the PL_sv_no branch is
slightly faster. On VC 2003 32 bit miniperl, this func dropped from 0x6D to
0x58 bytes of machine code.