Always enable layer hoisting in Skia

This will prevent bit rot of the layer hoisting code and position us better for turning this on in Chromium.

Review URL: https://codereview.chromium.org/698493002
Shrink saveLayer device bounds when it supplies an explicit bounds and has a complex paint

This CL shrinks the bound computed for saveLayers that possess both an explicit
bound and a complex paint (e.g., one that affects transparent black). In this
case the bound of the layer should be the clipped explicit bound rather then
the clip prior/after the saveLayer/restore block.

In the following the first bound is the currently computed bound
while the second is the new/desired one:

For a 100x100 picture

saveLayer (no bound, no paint) [ 0 0 100 100 ]  [ 50 50 100 100 ]
  setMatrix (translate 50, 50) [ 0 0 100 100 ] [ 50 50 100 100 ]
  saveLayer (bound of 0, 0, 50, 50 - complex paint) [ 0 0 100 100 ] [ 50 50 100 100 ]
  restore [ 0 0 100 100 ] [ 50 50 100 100 ]
restore [ 0 0 100 100 ] [ 50 50 100 100 ]

Review URL: https://codereview.chromium.org/696763002
Rebaselines for new colortype-xfermodes gm

TBR=bsalomon@google.com

BUG=skia:

Review URL: https://codereview.chromium.org/695343002
Cleanup: Remove unnecessary forward declarations from some views files.

Cautch in
https://skia.googlesource.com/skia/+/a3a706fcd4cc9376a1223a53f57589f29d4a36ea

BUG=None
TEST=None
R=djsollen@google.com

Review URL: https://codereview.chromium.org/680253004
Cleanup: Remove svn.py script.

We have moved on to a git world.

BUG=None
TEST=None
R=borenet@google.com

Review URL: https://codereview.chromium.org/691203002
Add class GrGLTextureRenderTarget for GL texture/rendertarget objects

BUG=skia:2889

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