Making JSON-RPC accept more content types

According to the RFC for JSON-RPC over HTTP at
http://www.jsonrpc.org/historical/json-rpc-over-http.html
"Content-Type SHOULD be 'application/json-rpc' but MAY be
'application/json' or 'application/jsonrequest'"

This patch fixes HTTPJsonRpcHandler to allow for any of those three
content types when accepting JSON-RPC HTTP requests.

This also fixes compatibility with the popular Python library jsonrpclib
which uses the application/json-rpc content type.
renderer: replace render buffer indices with queues
renderer: simplify code by always maintaining one front buffer
renderer: remove now pointless GetNext(Decode/Render) function
renderer: name present buffer structure to be able to reference it
renderer: store bypass format in rendermanager instead

The present method will be overwritten on each flippage
renderer: drop copies of variables, use queue data directly
renderer: grab presentlock in AddVideoPicture
[Linux] Read OS information from /etc/os-release
Most modern Linux distributions use the /etc/os-release
file for operating system information.
This patch will try to read the PRETTY_NAME variable from
/etc/os-release to identify the Linux distribution.

If /etc/os-release doesn't exist, the code will still fall back
to lsb_release or the distro-specific release files.

http://www.freedesktop.org/software/systemd/man/os-release.html
http://0pointer.de/blog/projects/os-release.html
[Settings] Silence the analyzer about a (not) possible null pointer dereference.
[Settings] Initialize members in constructors.
[Settings] Remove unused variables.
[Settings] Operator=' should return &.
[Settings] Function parameter '...' should be passed by reference.
[Settings] Prefer prefix ++/-- operators for non-primitive types.
[Settings] Possible inefficient checking for 'settingMap' emptiness.
[Settings] Make functions static if possible.
[GUIControlSettings] Make GetID() const.
[AdvancedSettings] Removed unused member variable and moved m_initialized = true at the end of Initialize().
FIX: add libm to librtmp