Implement locale support in searches and data queries.
Finish up locale and fallthough.

This completes the transition from language to locale support from the
previous several commits. All search and data classes now accept a
Locale class as a keyword. If none is provided, they will instead use
the global default. Access and configuration of locales is provided
through the get_locale() and set_locale() functions.

set_locale(language=None, country=None, fallthrough=False)
    This sets the global default, as well as the global fall through
    behavior. If no language or country is given, and no previous
    configuration is set, it will attempt to pull the system's locale
    from the environment.

get_locale(language=None, country=None)
    This returns a new Locale class to use directly in a search or data
    query. This will be automatically propogated through any additional
    objects spawned by the search or query.

Fallthrough
    If a language or country is specified for use by an API query,
    fallthrough is enabled, and there are missing or None fields, this
    will automatically run a second query with the language or country
    information removed, in an attempt to fill those missing fields.
    Fallthrough is not used for searches, however it will be used to
    supplement any information for results returned by those searches.
    Fallthrough is a global option, so while you can specify a specific
    locale to use for a line of queries, fallthrough will either be
    enabled for all or none.
Delete missed line causing syntax error.
Add exception type for unknown language or country.
Add Movie.fromIMDB method.

This accepts an IMDB number, padding and prepending 'tt' as necessary,
and immediately populates the Movie object to cycle in the correct TMDB
id for subsequent use with other methods.
Merge commit 'd7d68c2f584ee9c7bc9b52567038cb14fa8b0ed0'
Updated MythFrontend, MythArchive, MythBrowser, MythGallery, MythGame,
MythMusic, MythNetvision, MythWeather, MythZoneMinder translation
from Marko Punnar.

Thank you Marko!

PS: Sorry for the delayed commit, I thought I had time to process it
earlier today.

Closs #10512

Signed-off-by: Nicolas Riendeau <nriendeau@mythtv.org>
Merge branch 'master' of github.com:MythTV/mythtv
Move tmdb3 library for proper installation. Correct bugs in tmdb3.py.
Updated Canadian English MythWeather translation.
Adds final attempt at internal name resolution in MythSocket.

This adds one last pass at name resolution through the database before
falling back on the system name resolution. This corrects an issue on
Debian systems caused by their non-standard use of a 127.0.1.1 address
we do not listen on. There is potential for problem should
MythSocket::connect be called during CoreContext init, but a read
through the init code did not turn up any instances where this might
occur.

Fixes #10510
Allow AudioReencodeBuffer to work DTS-sourced audio too

Now it should handle audio input frame size <, = and > audio output frame
size.  For DTS input size = 2048, for AC3, 6144, and MP3, 4608 (which is also
the output size).

Fixes #10517
Re-fix HLS for AC3.  Argh. :)

Fixes #10488 (again)

This time I left in the debugging logging so if we have oddities later, we
can run -v audio --loglevel debug and see what the buffering is actually
doing.