Added DrawContext.

Elements paint onto a DrawingContext instead of bubbling up to their
parent.
Parents may give children their own context or an altered context.