Big updates - text drawing and selective redrawing

So, big boob that I am, I'd forgotten to remove a force full
redraw on each frame that I'd stuck in a while back for dev
purposes. And here I was, wondering why I wasn't getting good
framerates! LOLFAILAnyway, that's been pulled out, and what do you
know I hit a load of issues with redrawing. Think I've fixed
most of them, circle edge thicknesses were escaping their dirty
boxes being the major one.

In other news, added a drawText method to renderers to, you know,
draw text.