Make several functions in SVGRenderSupport templated for performance

Make several functions in SVGRenderSupport templated for performance:
- layoutChildren()
- computeContainerBoundingBoxes()

This way, the implementation knows the exact render type and can use faster
firstChild() from RenderSVGRoot / RenderSVGContainer instead of the generic
RenderObject::slowFirstChild().

This CL also makes SVGRenderSupport a class instead of a namespace so that
we can make the private utility functions private (now that they need to
be defined in the header).

The impact on the release binary size is minimal: +560 bytes.

R=pdr

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

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