Swaps >>> and /deep/ as deep combinator and alias

The latest spec at this time has removed /deep/ altogether and promoted >>> from
an alias for /deep/: https://drafts.csswg.org/css-scoping-1/#deep-combinator

/deep/ will remain as an alias for backwards compatibility.
diff --git a/lib/src/tree.dart b/lib/src/tree.dart
index a103679..cb410ec 100644
--- a/lib/src/tree.dart
+++ b/lib/src/tree.dart
@@ -125,7 +125,7 @@
   String get _combinatorToString {
     switch (combinator) {
       case TokenKind.COMBINATOR_DEEP:
-        return ' /deep/ ';
+        return ' >>> ';
       case TokenKind.COMBINATOR_DESCENDANT:
         return ' ';
       case TokenKind.COMBINATOR_GREATER:
diff --git a/lib/src/tree_printer.dart b/lib/src/tree_printer.dart
index 94ca193..cbe0353 100644
--- a/lib/src/tree_printer.dart
+++ b/lib/src/tree_printer.dart
@@ -272,7 +272,7 @@
     } else if (node.isCombinatorTilde) {
       output.writeValue('combinator', "~");
     } else if (node.isCombinatorDeep) {
-      output.writeValue('combinator', '/deep/');
+      output.writeValue('combinator', '>>>');
     } else {
       output.writeValue('combinator', "ERROR UNKNOWN");
     }
diff --git a/test/selector_test.dart b/test/selector_test.dart
index eb2bef8..a121223 100644
--- a/test/selector_test.dart
+++ b/test/selector_test.dart
@@ -61,11 +61,11 @@
 
   selectorAst = selector('.a /deep/ .b', errors: errors..clear());
   expect(errors.isEmpty, true, reason: errors.toString());
-  expect(compactOuptut(selectorAst), '.a /deep/ .b');
+  expect(compactOuptut(selectorAst), '.a >>> .b');
 
   selectorAst = selector('.x >>> .y', errors: errors..clear());
   expect(errors.isEmpty, true, reason: errors.toString());
-  expect(compactOuptut(selectorAst), '.x /deep/ .y');
+  expect(compactOuptut(selectorAst), '.x >>> .y');
 }
 
 // TODO(terry): Move this failure case to a failure_test.dart when the analyzer