set up skeleton for dwds (#130)

diff --git a/.travis.yml b/.travis.yml
index 247c687..4327fb2 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -17,6 +17,36 @@
 jobs:
   include:
     - stage: analyzer_and_format
+      name: "SDK: dev - DIR: dwds - TASKS: dartfmt -n --set-exit-if-changed ."
+      script: ./tool/travis.sh dartfmt
+      env: PKG="dwds"
+      dart: dev
+    - stage: analyzer_and_format
+      name: "SDK: stable - DIR: dwds - TASKS: dartfmt -n --set-exit-if-changed ."
+      script: ./tool/travis.sh dartfmt
+      env: PKG="dwds"
+      dart: stable
+    - stage: analyzer_and_format
+      name: "SDK: dev - DIR: dwds - TASKS: dartanalyzer --fatal-infos --fatal-warnings ."
+      script: ./tool/travis.sh dartanalyzer
+      env: PKG="dwds"
+      dart: dev
+    - stage: analyzer_and_format
+      name: "SDK: stable - DIR: dwds - TASKS: dartanalyzer --fatal-infos --fatal-warnings ."
+      script: ./tool/travis.sh dartanalyzer
+      env: PKG="dwds"
+      dart: stable
+    - stage: unit_test
+      name: "SDK: dev - DIR: dwds - TASKS: pub run test"
+      script: ./tool/travis.sh test_0
+      env: PKG="dwds"
+      dart: dev
+    - stage: unit_test
+      name: "SDK: stable - DIR: dwds - TASKS: pub run test"
+      script: ./tool/travis.sh test_0
+      env: PKG="dwds"
+      dart: stable
+    - stage: analyzer_and_format
       name: "SDK: dev - DIR: example - TASKS: dartfmt -n --set-exit-if-changed ."
       script: ./tool/travis.sh dartfmt
       env: PKG="example"
@@ -58,12 +88,12 @@
       dart: stable
     - stage: unit_test
       name: "SDK: dev - DIR: webdev - TASKS: pub run test -j 1 --run-skipped"
-      script: ./tool/travis.sh test
+      script: ./tool/travis.sh test_1
       env: PKG="webdev"
       dart: dev
     - stage: unit_test
       name: "SDK: stable - DIR: webdev - TASKS: pub run test -j 1 --run-skipped"
-      script: ./tool/travis.sh test
+      script: ./tool/travis.sh test_1
       env: PKG="webdev"
       dart: stable
 
diff --git a/dwds/CHANGELOG.md b/dwds/CHANGELOG.md
new file mode 100644
index 0000000..953310d
--- /dev/null
+++ b/dwds/CHANGELOG.md
@@ -0,0 +1,3 @@
+## 0.1.0-dev
+
+Initial version
diff --git a/dwds/LICENCE b/dwds/LICENCE
new file mode 100644
index 0000000..f75d7c2
--- /dev/null
+++ b/dwds/LICENCE
@@ -0,0 +1,26 @@
+Copyright 2019, the Dart project authors. All rights reserved.
+Redistribution and use in source and binary forms, with or without
+modification, are permitted provided that the following conditions are
+met:
+
+    * Redistributions of source code must retain the above copyright
+      notice, this list of conditions and the following disclaimer.
+    * Redistributions in binary form must reproduce the above
+      copyright notice, this list of conditions and the following
+      disclaimer in the documentation and/or other materials provided
+      with the distribution.
+    * Neither the name of Google Inc. nor the names of its
+      contributors may be used to endorse or promote products derived
+      from this software without specific prior written permission.
+
+THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+"AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
+OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
+LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
+DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
+THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
+(INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
+OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
diff --git a/dwds/bin/proxy.dart b/dwds/bin/proxy.dart
new file mode 100644
index 0000000..dc51059
--- /dev/null
+++ b/dwds/bin/proxy.dart
@@ -0,0 +1,7 @@
+// Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+
+void main() {
+  throw UnimplementedError();
+}
diff --git a/dwds/mono_pkg.yaml b/dwds/mono_pkg.yaml
new file mode 100644
index 0000000..82a0f20
--- /dev/null
+++ b/dwds/mono_pkg.yaml
@@ -0,0 +1,11 @@
+# See https://github.com/dart-lang/mono_repo for details
+dart:
+  - dev
+  - stable
+
+stages:
+  - analyzer_and_format:
+    - dartfmt
+    - dartanalyzer: --fatal-infos --fatal-warnings .
+  - unit_test:
+    - test
diff --git a/dwds/pubspec.yaml b/dwds/pubspec.yaml
new file mode 100644
index 0000000..29db388
--- /dev/null
+++ b/dwds/pubspec.yaml
@@ -0,0 +1,19 @@
+name: dwds
+version: 0.1.0-dev
+description: >-
+  A service that proxies between the Chrome debug protocol and the vm
+  service protocol.
+environment:
+  sdk: ^2.1.0
+dependencies:
+  source_maps: ^0.10.0
+  vm_service_lib: ^3.1.5-dev
+  webkit_inspection_protocol: ^0.3.6
+dev_dependencies:
+  test: ^1.0.0
+dependency_overrides:
+  vm_service_lib:
+    git:
+      url: https://github.com/jakemac53/vm_service_drivers.git
+      ref: add-to-json
+      path: dart
diff --git a/dwds/test/proxy_test.dart b/dwds/test/proxy_test.dart
new file mode 100644
index 0000000..4a7c386
--- /dev/null
+++ b/dwds/test/proxy_test.dart
@@ -0,0 +1,7 @@
+// Copyright (c) 2019, the Dart project authors.  Please see the AUTHORS file
+// for details. All rights reserved. Use of this source code is governed by a
+// BSD-style license that can be found in the LICENSE file.
+@TestOn('vm')
+import 'package:test/test.dart';
+
+void main() {}
diff --git a/tool/travis.sh b/tool/travis.sh
index 3c968fe..b71534d 100755
--- a/tool/travis.sh
+++ b/tool/travis.sh
@@ -29,8 +29,13 @@
     echo -e 'dartfmt -n --set-exit-if-changed .'
     dartfmt -n --set-exit-if-changed . || EXIT_CODE=$?
     ;;
-  test) echo
-    echo -e '\033[1mTASK: test\033[22m'
+  test_0) echo
+    echo -e '\033[1mTASK: test_0\033[22m'
+    echo -e 'pub run test'
+    pub run test || EXIT_CODE=$?
+    ;;
+  test_1) echo
+    echo -e '\033[1mTASK: test_1\033[22m'
     echo -e 'pub run test -j 1 --run-skipped'
     pub run test -j 1 --run-skipped || EXIT_CODE=$?
     ;;