[confluence] change buttons to edit controls (see #4613)
[rbp/omxplayer] Reset display region when video stream properties change

Currently when video stream properties change, e.g. when user switches to next or previous Live TV channel, and has the same frame width and height, the COMXVideo::SetVideoRect() method is not called, causing the video to play back with default source and destination rectangles, not respecting the user-defined zoom settings.

This commit fixes the issue.
build: make bootstrap script fail properly on failure

If the first command in the bootstrap script fails, exit with non-zero
exit status instead of silently continuing to the next command.
[tvshows] don't set scraper if we find a tvshow.nfo file.
[cosmetic] drop unused include
[fonts] drop reading of unicode='true' attribute as we assumed it was true anyway
Fix webserver memory leak

If the webserver is passed an If-Modified-Since value, which indicates
the
client has the current file, there is nothing to send, the code leaked a
context object.

To fix this I've converted a couple of items to smart ptrs.

The context is now an auto_ptr, and if it's used with the mhd callback
we can pass ownership by using release, otherwise it'll get destroyed on
exit of the function.

Also in the context, the CFile object is now a shared_ptr<CFile>, note
that the Close call is carried out in the CFile destructor.

This should make sure that appropriate cleanup occurs as things go out
of scope, without needing to have all the right deletes in the right
places.

In the free callback move the delete before the trace line, so that we
can be sure everything has been closed and freed when that trace line
occurs.
[EPG] Do *Persist*() calls on a copy of m_epgs

We can get in a situation where PersistAll() and PersistTables() are
running simutaneously, leading to memory corruption.
[EPG] Make sure we catch requests to update during update.
FIX: do not popup OSD on DVD menu with touch or mouse
[cleanup] drop unused code blocks in contextmenu from ancient skins.

Skins for 14.X should use a single background image (id 999) with border.
and must have a grouplist with id 996 for the context menu.
[cosmetic] change name of define to better reflect what it's for (old python guilib stuff)
[guilib] remove backward compatibility of converting edit controls to buttons.

For v14 ensure the following controls are edit controls:

SmartPlaylistEditor.xml:
 id 12, name of smart playlist

SmartPlaylistRule.xml:
 id 17, value of rule

DialogMediaSource.xml:
 id 12, name of media source

DialogNetworkSetup.xml:
 id 11, server address
 id 13, port
 id 14, username
 id 15, password
 id 16, remote path
[addons] adds GetDependencyVersion() to CAddon - used in place of GetXbmcApiVersionDependency
[guilib] adds APIVersion() to CSkin to determine which API version the skin wants.
[guilib] drop the separate default for the aspect ratio inside containers. It previously defaulted to keep unless the image was constant (not infoimage) where it defaulted to stretch. It now defaults to stretch like all images.
[guilib] remove inconsistent positioning of labels inside containers. <left> now mean left
[guilib] bump xbmc skin version to 5.1.0, still bw compat to 5.0.0
[cosmetic] drop unused function
[cosmetic] drop function definitions that no longer exist