Make sure we normalize relative()'s return value.

I'm not sure why relative() does this, but it's encoded in the tests so
we may break people if we change it.

R=rnystrom@google.com

Review URL: https://codereview.chromium.org//1491503002 .
diff --git a/lib/src/context.dart b/lib/src/context.dart
index a05ffda..5331e37 100644
--- a/lib/src/context.dart
+++ b/lib/src/context.dart
@@ -412,7 +412,7 @@
   /// thrown.
   String relative(String path, {String from}) {
     // Avoid expensive computation if the path is already relative.
-    if (from == null && this.isRelative(path)) return path;
+    if (from == null && this.isRelative(path)) return this.normalize(path);
 
     // Avoid calling [current] since it is slow and calling join() when
     // [from] is absolute does nothing.