mythzmserver: add the sub pixel order to the monitor debugging

Refs #11957.
mythzmserver: use the frame size from the shared memory in ZM 1.26.x

Refs #11957.
Services: Add more ToString() and ToDescription() methods

This is a temporary solution to make these strings re-usable in the
WebFrontend. David Blain will be implementing something much more
sophisticated when he has time.
WebFrontend: Initial work on schedule editor. (Incomplete)

Refs #11938
Eliminate use of the recgroup string from RecordingRule.

I've added some temporary static helpers to RecordingInfo allowing
conversion between ID and string representations of the recording
group to ease the transition.

NOTE: Changing the recording group of a rule via MythWeb is almost
certainly broken after this change and I've no intention of fixing
since the WebFrontend will have a working schedule editor very
soon. If anyone wants to keep MythWeb alive then I suggest porting it
to use the services API for schedule work.
MythZoneMinder: by default exclude continuous events from 'Show Events' screen

You can now toggle whether continuous events (events from monitors that are
continuously recording) are shown in the list of events. Press Menu and select
the option to toggle the setting which will be remembered whenever you enter
the 'Show Events' screen.

If you select an individual monitor then all events will still be shown for the
selected monitor this only filters events when showing events for all monitors.

Note: bumps the protocol version so both mythzmserver and the plugin need to be
updated.
tmdb3: Add width and height attributes to coverart and fanart
Change the default value for recgroupid in the record/recorded tables to 1. (Doesn't affect users who have already upgraded to schema 1321+
cppcheck: limit width in scanf to the digits of an uint32_t
cppcheck: remove unused variable added in 7191881b
cppcheck: turn variable into bool as its getter and setter are for a bool
coverity 1073819: initialize array before use
cppcheck: remove unused variable
silence msvc warning about truncating double to float
msvc hinted that operator precedence might be an issue here

We convert the length to a bool then negate it, then compare it with > 0.
All a complicated way of checking if the buffer is empty.
Services: Add methods to get Recording Storage Groups and Play Groups which are required to create a recording schedule.
cppcheck: remove unused variables
cppcheck: move initialization to initialization list