Rewrite! Almost every feature is now gone, but all drawing is done into a mutable texture that I can query to do pixel-perfect collision detection.