Improve legibility and display of CEA-608 captions.

Make sure 608 captions are centered on screen, while still confined
to 90% safe area, as long as zoom factor is not too extreme.

Use correct maximum columns (32) and rows (15) for geometry.

Compute a better font.pixelSize by making first guess, then adjusting
using QFontMetrics' height and lineSpacing to choose a font.pixelSize
that works for all but the most extreme fonts.

Eliminate use of fudge factors that caused a number of problems, such as:
- smaller than necessary font.pixelSize.
- Gaps between caption lines.
- Captions meant for row 14 appearing on row 15.

Make sure top rows are anchored to top of safe area and bottom rows are
anchored to bottom of safe area while eliminating unhelpful
floating point arithmetic.

More logging at verbosity vbi and log level debug have been added to
gain visibility into geometry calculations.

See https://code.mythtv.org/trac/ticket/12057

Conflicts:
	mythtv/libs/libmythtv/subtitlescreen.cpp