Move paint code from RenderSVGForeignObject to SVGForeignObjectPainter

This patch moves the ForeignObject paint code into the new
SVGForeignObjectPainter. This is a straight code move with a few small
exceptions:
1) childPoint is now const and is used for all BlockPainter calls.
Previously, an extra IntPoint() was used for no reason.
2) FloatRect viewportRect() has been exposed on RenderSVGForeignObject.
3) Fixed up a comment.

BUG=412088

Review URL: https://codereview.chromium.org/597753002

git-svn-id: svn://svn.chromium.org/blink/trunk@182540 bbb929c8-8fbe-4397-9dbb-9b2b20218538