Fix memory leakage in python bindings

The python bindings generated by the groovy code generator contain a reference counting bug which results in a memory leak whenever a std::vector is converted to a python list.  The following member functions are affected:

* xbmcvfs.listdir
* xbmc.Player.getAvailableSubtitleStreams
* xbmc.Player.getAvailableAudioStreams
* xbmcgui.Control.getPosition
* xbmcgui.Dialog.browse
* xbmcgui.Dialog.browseMultiple

The reference counting bug occurs because PyList_Append() increments the reference count of the item, so the caller needs to call Py_DECREF() because it no longer owns the object.

This bug is especially problematic when running the Watchdog Service Addon since it may result in frequent calls to xbmcvfs.listdir, and each call can leak many kilobytes of data when listing directories containing many files.
[DVDInputStreamNavigator] allow fallback to root menu call if title menu call fails (like VLC)
[DVDInputStreamNavigator] allow to return from "endless" loop of NOPs
[omxplayer] Always enable timestamp fifo mode.

hints.ptsinvalid is only set for h264 in avi files. However it also can affect any videos with B frames in any container
(we have reports of mp4 and mkv stuttering because of invalid pts values).

To solve this we always enable the timestamp fifo mode, and the gpu treats this as an optional flag, and falls back to non-fifo timestamp
mode if the variance of that timestamp stream is better.
Use NULL from cstddef

This fixes build when GIT_REV is not defined.
[omxplayer] Fix incorrect settings query that can cause video stutter

A change in CSettings was missed here, and results in the clock component not being configured correctly.
This doesn't apply the correct filtering to clock changes and can create video stutter
[omxplayer] Reduce rate of clock change to reduce video stutters

After analysing some files with video stutter, it was found that the filter coefficients used
for adjusting the clock were set higher than the maximum hdmi clock deviation allowed.

This means when gpu makes small clock adjustments to correct for lip-sync, the video drops frames.

With this patch the frame drops are fixed.
Correctly use JAVA_HOME when generating SWIG bindings

Fix some compilation problems on windows with multiple java install or java not in path but with a correct JAVA_HOME defined
[pvr] change misleading log message

We're playing a recording, the old message made it sound like we're 
beginning to record something
[pvr] remove superfluous and and non-working log message

tag.m_strFile is always empty here anyway, and the only place where this 
method is called from already logs the event properly
[pvr] correct class name used in log message
Swapped "spa" langcode definition so "Spanish" is displayed instead of "Castilian" when changing the subtitle language. Castilian is an alternative name to Spanish http://www.loc.gov/standards/iso639-2/php/code_list.php
Revert "[omxplayer] When setting fullscreen flag we don't want noaspect"

This reverts commit a4ad2eaf7876684c572056e1474a00b4d6433ced.
[omxplayer] When setting fullscreen flag we don't want noaspect, try 2
[PVR] bump add-ons
Merge pull request #4421 from FernetMenta/pvr

[PVR] bump add-ons
Merge pull request #4356 from popcornmix/invalidpts

[omxplayer] Always enable timestamp fifo mode.
Merge pull request #4355 from popcornmix/reduce_video_swing

[omxplayer] Reduce rate of clock change to reduce video stutters
Merge pull request #4419 from popcornmix/3daspect2

[omxplayer] When setting fullscreen flag we don't want noaspect, try 2
json-rpc: make logging of incoming requests optional