Support backface-visibility in spv2

In slimming paint v2, backface visibility is a property of a paint
chunks (aka a sequence of display items with the same paint props). This
patch adds a new bool to PaintChunkProperties for whether a chunk's
backface is hidden.

LocalBorderBoxProperties has been refactored to only contain the local
border box properties and not all paint chunk properties, which should
make it more clear that paint chunk properties (such as the new
backfaceHidden property) are not set in the paint property tree builder.

There is a large remaining task to implement preserves3D which is the
common usecase for backface visibility.

Backface-visibility is treated as stacking context property in this
change, as it is currently in blink. A followup email to public-fx will
be sent out for more clarification.

BUG=587236

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

Cr-Commit-Position: refs/heads/master@{#376922}
diff --git a/third_party/WebKit/LayoutTests/VirtualTestSuites b/third_party/WebKit/LayoutTests/VirtualTestSuites
index 7998578b..c43f70b6 100644
--- a/third_party/WebKit/LayoutTests/VirtualTestSuites
+++ b/third_party/WebKit/LayoutTests/VirtualTestSuites
@@ -190,7 +190,7 @@
   },
   {
     "prefix": "spv2",
-    "base": "paint",
+    "base": "compositing",
     "args": ["--enable-slimming-paint-v2"]
   },
   {
@@ -205,6 +205,11 @@
   },
   {
     "prefix": "spv2",
+    "base": "paint",
+    "args": ["--enable-slimming-paint-v2"]
+  },
+  {
+    "prefix": "spv2",
     "base": "svg",
     "args": ["--enable-slimming-paint-v2"]
   },