[basePen] add LoggingPen and DecomposingPen, subclass BasePen from DecomposingPen
[basePen] add LoggingPen and DecomposingPen, subclass BasePen from DecomposingPen

This is so we can reuse addComponent with the recording pen, without having to
inherit from the BasePen (which also splits curveTo and qCurveTo commands).

Log warning message on missing glyphs by default, optionally raise KeyError
if skipMissingComponents = False

fonttools/fonttools,googlefonts/fonttools