Fix some clipping code bugs

* Make GraphicsContext::clipOut do what it should: exclude the given
rectangle from the current clipping region, instead of resetting the
clipping to the whole view rectangle and including said rect.

This means less drawing will occur, and also fixes #7407. (we still need
to actually draw the shadows, however).