Improve the performance of Live TV embedded in the Program Guide.

Most of the Program Guide's DB and backend queries are moved out of
the UI loop into a background helper thread, to minimize the chance
of the embedded Live TV window stuttering.

More work can and should be done to pre-cache scheduler data and
channel tuning status, and to have the backend invalidate/update it
when there are changes.

The background computation introduces some guide navigation UI
oddities, where the expensive-to-compute elements (the list of
channels) update on the screen slower than other elements.

There is still some slight stuttering on a single-core ION frontend,
but most frontends should see a vast or complete reduction in Guide
navigation stuttering.

Refs #11020

(cherry picked from commit 7f2140ce062ade5a5523565b469ff58ada9c0d0d)

Conflicts:
    mythtv/programs/mythfrontend/guidegrid.cpp
Update ABI version after 1b16c65f465588a8991b730fb23ef0d1c61ed181.
Mythtranscode: Don't overwrite cutlist from the command line.

Adapted from a patch by John Finlay.  Refs #11939.
(cherry picked from commit 22409776f5d737dbf8a9b3d31d41498b20a59774)
Simplify MythCoreContext::GetMasterHostPrefix(). It's a waste of time to get the IP/port from the socket when we can be using the values from the settings instead, if we're not already connected to the master we will soon be connecting anyway to conduct the file transfer.
(cherry picked from commit 22b48f435a97b6b973a2e0dea9e89548350bc01e)

Refs #11937
Fix reversed logic in dfe5396.  Refs #11939.
Respect LiveTVOrder priority when switching sources.

This is the playback OSD menu Playback > Source > Switch Source.
Refs #10967.
(cherry picked from commit cb602368945cf42f9072d8187991cff0b025684a)
Handle system keypress events during playback.  Refs #11881.
(cherry picked from commit b83e60520062cd338f2b952a8b8bc7aeb0260b27)