TextArea: more sensible location for the mouse refresh hack

fixes scrolling the TA and not having options update and they move under the mouse.
portrait icons: force 3 char

this text must be centered or it is off, but if it is centered with only 1 or 2 chars then it is also wrong
Font: fix minor regression bottom aligning single line text
Region: add a class method for getting a bounding box for multiple rects
TextContainer: add all used line segments to the layout regions

otherwise its possible that some later (and smaller) content can put itself in the empty space on one of the lines we printed
Font: fix regression in rendering to image
TextArea: only pad "real" drop caps
TextArea: add hack to work around INITIALS font palette issue

fixes chargen initials being unpaletted
Chargen: fix missing newlines
GUIREC: wrap class in [p] tag to prevent status icon "drop cap"