rast/*: explicit override.
rast: remove direct_2.

This wasn't exercised by the demos and, from inspection of the code,
probably didn't work.
arena: add ArenaPtr, arena_make.
rast/text_10x16: tiny cleanup.
rast/*: change resource management strategy.

With the addition of ArenaPtr and arena_make, we can expect useful work
from the destructor of Arena-allocated objects.  At that point there's
not an obvious reason for the current rasterizer lifecycle, with the
attendant dangers of half-constructed objects.

So I've switched the rasterizers to allocate at construction and zero at
destruction.

I'm debating how much to add in the way of safety interlocks.  For
example, if a Rasterizer is destroyed while a member of the scan band
table, should we detect this bug and assert?  At the moment I haven't
done anything like this.
rasterizer: remove activate/deactivate.

In the new Arena model, constructors and destructors do this job.