Rewire the pubspecs to use local paths

Using local paths ensures that each package sees each other package at HEAD.
diff --git a/dev/update_packages.py b/dev/update_packages.py
new file mode 100755
index 0000000..6900fca
--- /dev/null
+++ b/dev/update_packages.py
@@ -0,0 +1,19 @@
+#!/usr/bin/env python
+# Copyright 2015 The Chromium Authors. All rights reserved.
+# Use of this source code is governed by a BSD-style license that can be
+# found in the LICENSE file.
+
+import os
+import subprocess
+
+def update(directory):
+    packages = sorted(os.listdir(directory))
+    for package in packages:
+        package_dir = os.path.join(directory, package)
+        if os.path.isdir(package_dir):
+            print 'Updating', package, '...'
+            subprocess.check_call(['pub', 'get'], cwd=package_dir)
+
+FLUTTER_ROOT = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
+update(os.path.join(FLUTTER_ROOT, 'packages'))
+update(os.path.join(FLUTTER_ROOT, 'examples'))
diff --git a/examples/.gitignore b/examples/.gitignore
new file mode 100644
index 0000000..5dfbd5b
--- /dev/null
+++ b/examples/.gitignore
@@ -0,0 +1,8 @@
+.DS_Store
+.buildlog
+.idea
+.packages
+.pub/
+build/
+packages
+pubspec.lock
diff --git a/examples/address_book/pubspec.yaml b/examples/address_book/pubspec.yaml
index 46f0b6d..b00179d 100644
--- a/examples/address_book/pubspec.yaml
+++ b/examples/address_book/pubspec.yaml
@@ -1,10 +1,4 @@
 name: address_book
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/fitness/pubspec.yaml b/examples/fitness/pubspec.yaml
index e9c3ad6..434a310 100644
--- a/examples/fitness/pubspec.yaml
+++ b/examples/fitness/pubspec.yaml
@@ -1,12 +1,8 @@
 name: fitness
 dependencies:
-  flutter: 
-    '0.0.16'
-  playfair: ^0.0.10
+  # TODO(abarth): Move playfair into flutter.git
+  # playfair: ^0.0.10
   path: ^1.3.6
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
+
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/game/pubspec.yaml b/examples/game/pubspec.yaml
index dccb772..673046d 100644
--- a/examples/game/pubspec.yaml
+++ b/examples/game/pubspec.yaml
@@ -1,15 +1,6 @@
 name: asteroids
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-  flutter_sprites: 
-    '0.0.13'
-  box2d: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
   flutter_sprites:
-    path: ../../skysprites
+    path: ../../packages/flutter_sprites
diff --git a/examples/hello_world/pubspec.yaml b/examples/hello_world/pubspec.yaml
index f823464..a61659d 100644
--- a/examples/hello_world/pubspec.yaml
+++ b/examples/hello_world/pubspec.yaml
@@ -1,10 +1,4 @@
 name: hello_world
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/mine_digger/pubspec.yaml b/examples/mine_digger/pubspec.yaml
index 6f5d79a..6d88929 100644
--- a/examples/mine_digger/pubspec.yaml
+++ b/examples/mine_digger/pubspec.yaml
@@ -1,10 +1,4 @@
 name: mine_digger
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/raw/pubspec.yaml b/examples/raw/pubspec.yaml
index a7b21bc..758aa8b 100644
--- a/examples/raw/pubspec.yaml
+++ b/examples/raw/pubspec.yaml
@@ -1,10 +1,4 @@
 name: sky_raw_examples
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/rendering/pubspec.yaml b/examples/rendering/pubspec.yaml
index b16bbd4..0cf2e84 100644
--- a/examples/rendering/pubspec.yaml
+++ b/examples/rendering/pubspec.yaml
@@ -1,10 +1,4 @@
 name: flutter_rendering_examples
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/stocks/pubspec.yaml b/examples/stocks/pubspec.yaml
index df2eddd..a48c343 100644
--- a/examples/stocks/pubspec.yaml
+++ b/examples/stocks/pubspec.yaml
@@ -1,10 +1,4 @@
 name: stocks
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
diff --git a/examples/widgets/pubspec.yaml b/examples/widgets/pubspec.yaml
index 05b8556..9ae300e 100644
--- a/examples/widgets/pubspec.yaml
+++ b/examples/widgets/pubspec.yaml
@@ -1,13 +1,6 @@
 name: sky_widgets_examples
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-  flutter_rendering_examples: any
-dependency_overrides:
-  material_design_icons:
-    path: ../../sky/packages/material_design_icons
   flutter:
-    path: ../../sky/packages/sky
+    path: ../../packages/flutter
   flutter_rendering_examples:
     path: ../rendering
diff --git a/packages/flutter/pubspec.yaml b/packages/flutter/pubspec.yaml
index e334c21..907ecde 100644
--- a/packages/flutter/pubspec.yaml
+++ b/packages/flutter/pubspec.yaml
@@ -4,18 +4,16 @@
 description: A framework for writing Flutter applications
 homepage: http://flutter.io
 dependencies:
-  cassowary: '>=0.1.7 <0.2.0'
   intl: '>=0.12.4+2 <0.13.0'
   material_design_icons: '>=0.0.3 <0.1.0'
-  newton: '>=0.1.4 <0.2.0'
-  sky_engine: 
-    '0.0.49'
-  sky_services: 
-    '0.0.50'
-  sky_tools: '>=0.0.37 <0.1.0'
+  sky_engine: 0.0.49
+  sky_services: 0.0.50
   vector_math: '>=1.4.3 <2.0.0'
+
+  cassowary:
+    path: ../cassowary
+  newton:
+    path: ../newton
+
 environment:
   sdk: '>=1.12.0 <2.0.0'
-
-executables:
-  flutter:
diff --git a/packages/flutter_sprites/pubspec.yaml b/packages/flutter_sprites/pubspec.yaml
index 137113c..5fc7039 100644
--- a/packages/flutter_sprites/pubspec.yaml
+++ b/packages/flutter_sprites/pubspec.yaml
@@ -4,6 +4,6 @@
 author: Flutter Authors <flutter-dev@googlegroups.com>
 homepage: http://flutter.io
 dependencies:
-  flutter: 
-    '0.0.18'
-  box2d: ">=0.2.0 <0.3.0"
+  box2d: '>=0.2.0 <0.3.0'
+  flutter:
+    path: ../flutter
diff --git a/packages/flutter_tools/pubspec.yaml b/packages/flutter_tools/pubspec.yaml
index 23fa0e7..6232d60 100644
--- a/packages/flutter_tools/pubspec.yaml
+++ b/packages/flutter_tools/pubspec.yaml
@@ -8,10 +8,9 @@
   sdk: '>=1.12.0 <2.0.0'
 
 dependencies:
-  analyzer: ">=0.26.1+17" # see note below
+  analyzer: '>=0.26.1+17' # see note below
   archive: ^1.0.20
   args: ^0.13.0
-  flx: ">=0.0.7 <0.1.0"
   crypto: ^0.9.1
   mustache4dart: ^1.0.0
   path: ^1.3.0
@@ -19,6 +18,9 @@
   test: ^0.12.5
   yaml: ^2.1.3
 
+  flx:
+    path: ../flx
+
 # A note about 'analyzer':
 # We don't actually depend on 'analyzer', but 'test' does. We aren't
 # compatible with some older versions of 'analyzer'. We lie here,
diff --git a/packages/flx/pubspec.yaml b/packages/flx/pubspec.yaml
index 56e9fc0..3b8517a 100644
--- a/packages/flx/pubspec.yaml
+++ b/packages/flx/pubspec.yaml
@@ -2,14 +2,14 @@
 version: 0.0.10
 author: Flutter Authors <flutter-dev@googlegroups.com>
 description: Library for dealing with Flutter bundle (.flx) files
-homepage: http://flutter.io
+homepage: https://github.com/flutter/flutter/tree/master/packages/flx
 dependencies:
-  sky_services: 
-    '0.0.50'
-  yaml: ^2.1.3
   asn1lib: ^0.4.1
   cipher: ^0.7.1
   crypto: ^0.9.1
   path: ^1.3.0
+  sky_services: 0.0.50
+  yaml: ^2.1.3
+
 environment:
   sdk: '>=1.12.0 <2.0.0'
diff --git a/packages/unit/pubspec.yaml b/packages/unit/pubspec.yaml
index 71e5c88..38eb810 100644
--- a/packages/unit/pubspec.yaml
+++ b/packages/unit/pubspec.yaml
@@ -1,15 +1,8 @@
-name: sky_unit_tests
+name: flutter_unit_tests
 dependencies:
-  flutter: 
-    '0.0.16'
-  sky_tools: any
-  test: any
-  quiver: any
-  flx: ^0.0.2
-dependency_overrides:
-  material_design_icons:
-    path: ../packages/material_design_icons
-  flutter:
-    path: ../packages/sky
+  test: ^0.12.5
+  quiver: ^0.21.4
   flx:
-    path: ../packages/flx
+    path: ../flx
+  flutter:
+    path: ../flutter
diff --git a/packages/updater/pubspec.yaml b/packages/updater/pubspec.yaml
index b8a3bd6..192dd01 100644
--- a/packages/updater/pubspec.yaml
+++ b/packages/updater/pubspec.yaml
@@ -1,16 +1,16 @@
 name: updater
 author: Flutter Authors <flutter-dev@googlegroups.com>
-description: The autoupdater for flutter
+description: An autoupdater for Flutter
 homepage: http://flutter.io
 dependencies:
-  flutter: '0.0.18'
-  yaml: ^2.1.3
   path: ^1.3.0
-  flx: 0.0.1
-dependency_overrides:
+  yaml: ^2.1.3
+
+  # TODO(abarth): Updater should not depend on flutter
   flutter:
-    path: ../sky
+    path: ../flutter
   flx:
     path: ../flx
+
 environment:
   sdk: '>=1.12.0 <2.0.0'