Reworked all of the NOAA/NWS Weather Scripts

Seems weather.gov has moved the urls for nearly all their data services.  On
top of that, the SOAP response is gzip encoded by default, and SOAP::Lite is
stupid and can't handle it.  Also, we were missing the Units parameter which
is now required.

Fixes #10821
(cherry picked from commit b8a78aeb35167a676a7e25c342a1869e8016d76a)
Revert "Protect the reschedule queue with a seperate lock to fix a backend deadlock."

This reverts commit 5eb97790f3c36f9d2524275e545189cafda9d48a.

While this seems to work well in master, it appears to make the
situation worse in 0.25 and I really don't have the time to figure out
why. Anyone experiencing the pre-existing deadlock will need to
upgrade to 0.26 when it's released. Refs #10771
Protect the reschedule queue with a seperate lock to fix a backend deadlock.

 Fixes a deadlock in mythbackend caused when a reschedule request occurs
 immedately prior to a recording starting.

 The recorder thread locks the scheduler when starting a recording. The pending
 reschedule request handled in the event loop waits for the scheduler lock to be
 released blocking the event loop. The backend is now stopped from handling any
 further events or protocol requests, meanwhile the recorder is waiting on
 events to be processed before it will release the lock resulting in an
 irrecoverable deadlock (or hang) and the failure of the recording.

 This deadlock was more likely to be triggered for users of EIT because it will
 ask for a reschedule every 5 minutes in addition to any reschedules triggered
 through other means.

 Refs #10771
Fix a bug resulting in multiple copies of the same track being inserted into the database
Allow visualizations to be turned on during playback.

In particular, allow the Audio>Visualizations submenu to appear in the
Playback OSD menu.
(cherry picked from commit 85e3a38349713330d30628dfeb33059b8d9c60bf)
Internet Content: Fix TED Talks RSS

Fixes #10570
(cherry picked from commit 24c688e333c133c957628c4d70ea1d05adb83249)
Properly set job type in fromProgram and fromRecorded methods.

Signed-off-by: Raymond Wagner <rwagner@mythtv.org>
(cherry picked from commit 868a566c1d635be3e60f83438f87b6f21d9f1780)
Fix 0ms sleep time calculation in scheduler.

Don't check the pending list for programs that won't record.  They'll
never be there and don't need the 30 second padding.

Fixes #10279 .
(cherry picked from commit 88817964d66d0a18c43f3ff370994108ebe46c13)
Hopefully remove more scheduler/recorder deadlocks.

Change the scheduler to unlock schedLock when calling the recorder
synchronously.  If the recorder happens to be calling the scheduler at
the same time, this allows the recorder's call to grab the lock as
needed.

Refs #10647, #10770 and #10771 .
(cherry picked from commit ca273324961b95e300890ed40e833249b5460bd8)

Conflicts:
	mythtv/programs/mythbackend/scheduler.cpp
Remove MythGame's MAWS grabber.

Remove MythGame's MAWS grabber since this metadata source has been
dead for some time and the possibility of it ever coming back
appear to be slim and the possibily of it using the same API are
nonexistent.
Fix HLS transcoding after 199342ef7a.

Add a missing + in a += when setting the timecode being saved
in the audio reencode buffer.
Squelch an inuseprograms DB warning during HLS transcode.

If the file's hostname isn't known when we go to insert into
inuseprograms, use our own hostname for the rechost column.

References #10520.  Carries over e7a6d7e from master.
More scheduler/recorder deadlock avoidance.

RecordPending() can block so it needs to have schedLock released
around calls to it too.

(cherry picked from commit 6cb14eec6fa56ee168ef0899d375ffdaba5ee067)
Fix backend webserver when html dir path contains a link.

Use canonicalPath() consistently in the directory path checking.
This fixes an issue where the backend webserver would not serve
up static content if the html directory was in a path which
contained one or more links.
(cherry picked from commit 381c2ebfdc9c1a80adb08207e3bb149e351a4701)
Allow all weather screens to be deleted

This resolves an issue where it was impossible to delete all screens. This
was especially problematic when those screens were attached to
grabbers which no longer existed.
(cherry picked from commit 3f108e78d99970b1d408ccee1fba00e5c1e9f9fd)
If a grabber cannot return a value for a data field then allow the themer to hide it or chose what value to display instead of 'N/A'
(cherry picked from commit d273cd7b27a49168bad7cba7a36ce439ade3274f)
Properly format all data items, including those from the 18hr forecast
(cherry picked from commit ba127360b488d5195a1d6823a1433a266390bf3e)
Fix a segfault in mythweather when search for location

If a script returned invalid data we would segfault because no bounds
checking was performed.

While here I refactored the loops immediately around the problem to
use proper iterators for speed and simplicity.
(cherry picked from commit f5d1986f145d1992dde07561a781a94ac45f807b)
Fix a stupid typo in last commit.
(cherry picked from commit b7f7d522f2741a27fcd82177c8a90451696eeba3)
Setting VERSION to v0.25.2