Fix 2D canvas state persistency after OffscreenCanvas.transferToImageBitmap
This change restores the matrix and clip state stack on the new
ImageBuffer that get created by OffscreenCanvasRenderingContext2D
after the previous buffer was torn off by transferToImageBItmap.
This change also adds the clip() method to OffscreenCanvasRenderingContext2D.
BUG=
593349
Committed:
https://crrev.com/b46b601d0286d9ffc010250ce48602f21bfd6404
Cr-Commit-Position: refs/heads/master@{#396559}