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.
Merge remote-tracking branch 'upstream/master'