Make TreeNode.visit return dynamic.

Subclasses of TreeNode already do `visit(visitor) =>
visitor.visitSomething(this)`, this just exposes it at the root of the tree
hierarchy.  This is needed for package:html, where we have code that would do
the equivalent of `x = node.visit(myVisitor)`.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//1969953002 .
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 6eaa03c..c2f409a 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,3 +1,7 @@
+## 0.13.2
+
+* Relax type of TreeNode.visit, to allow returning values from visitors.
+
 ## 0.13.1
 
 * Fix two checked mode bugs introduced in 0.13.0.
diff --git a/lib/src/tree_base.dart b/lib/src/tree_base.dart
index 095b493..51207e1 100644
--- a/lib/src/tree_base.dart
+++ b/lib/src/tree_base.dart
@@ -16,7 +16,7 @@
   TreeNode clone();
 
   /** Classic double-dispatch visitor for implementing passes. */
-  void visit(VisitorBase visitor);
+  visit(VisitorBase visitor);
 
   /** A multiline string showing the node and its children. */
   String toDebugString() {
diff --git a/pubspec.yaml b/pubspec.yaml
index 10cb940..c6f4d4f 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,5 +1,5 @@
 name: csslib
-version: 0.13.1
+version: 0.13.2
 author: Dart Team <misc@dartlang.org>
 description: A library for parsing CSS.
 homepage: https://github.com/dart-lang/csslib