[pvr] fix marking recordings as watched or unwatched

@xhaggi @opdenkamp this bug has been around forever and I have a feeling this isn't the best way to fix it. Do you have any insight into what could be wrong?
at line 297 we do another update to the wrong instance `pItem->GetPVRRecordingInfoTag()->SetLastPlayedPosition(0);` 

i would prefer to do something like ...
```
CPVRRecordingPtr recordingPtr = GetById(pItem->GetPVRRecordingInfoTag()->m_iClientId, pItem->GetPVRRecordingInfoTag()->m_strRecordingId);

if (recordingPtr)
  recordingPtr->SetPlayCount(count);

...

if (recordingPtr)
  recordingPtr->SetLastPlayedPosition(0);
  
```