left margin added
support for fixed top/bottom padding
replace globals with layout manager class
Ctrl now laying out okay, with just a couple of issues

1. Smaller text looks slighly misaligned along the vertical axis. This
might be rectified by scanning the letters (esp '(' which seems like
the tallest glyph) and getting the exact_size from the top as well
as the bottom.

2. When 1 px of whitespace is requested between caret top and text
top, all comply except '(' e.g. at point size 18. Perhaps like 1.
a scan from the top for exact height is required.