misc: support Dart 2 stable (#34)

Also fix deprecations in tests
diff --git a/analysis_options.yaml b/analysis_options.yaml
deleted file mode 100644
index a10d4c5..0000000
--- a/analysis_options.yaml
+++ /dev/null
@@ -1,2 +0,0 @@
-analyzer:
-  strong-mode: true
diff --git a/pubspec.yaml b/pubspec.yaml
index 77b52c0..8c7773e 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -1,12 +1,15 @@
 name: json_rpc_2
-version: 2.0.8
+version: 2.0.9
 author: Dart Team <misc@dartlang.org>
 description: An implementation of the JSON-RPC 2.0 spec.
 homepage: http://github.com/dart-lang/json_rpc_2
+
+environment:
+  sdk: ">=2.0.0-dev.17.0 <3.0.0"
+
 dependencies:
   stack_trace: '>=0.9.1 <2.0.0'
   stream_channel: '^1.1.0'
+
 dev_dependencies:
-  test: "^0.12.28"
-environment:
-  sdk: ">=2.0.0-dev.17.0 <2.0.0"
+  test: ^1.0.0
diff --git a/test/client/client_test.dart b/test/client/client_test.dart
index 1648df0..358247d 100644
--- a/test/client/client_test.dart
+++ b/test/client/client_test.dart
@@ -69,7 +69,7 @@
 
   test("sends a synchronous batch of requests", () {
     controller.expectRequest((request) {
-      expect(request, new isInstanceOf<List>());
+      expect(request, new TypeMatcher<List>());
       expect(request, hasLength(3));
       expect(request[0], equals({'jsonrpc': '2.0', 'method': 'foo'}));
       expect(
@@ -101,7 +101,7 @@
 
   test("sends an asynchronous batch of requests", () {
     controller.expectRequest((request) {
-      expect(request, new isInstanceOf<List>());
+      expect(request, new TypeMatcher<List>());
       expect(request, hasLength(3));
       expect(request[0], equals({'jsonrpc': '2.0', 'method': 'foo'}));
       expect(
@@ -157,7 +157,7 @@
 
     expect(controller.client.sendRequest("foo", {'param': 'value'}),
         throwsA(predicate((exception) {
-      expect(exception, new isInstanceOf<json_rpc.RpcException>());
+      expect(exception, new TypeMatcher<json_rpc.RpcException>());
       expect(exception.code, equals(error_code.SERVER_ERROR));
       expect(exception.message, equals('you are bad at requests'));
       expect(exception.data, equals('some junk'));
diff --git a/test/server/server_test.dart b/test/server/server_test.dart
index c2f87ab..b9ba504 100644
--- a/test/server/server_test.dart
+++ b/test/server/server_test.dart
@@ -70,7 +70,7 @@
             'data': {
               'request': {'jsonrpc': '2.0', 'method': 'foo', 'id': 1234},
               'full': 'FormatException: bad format',
-              'stack': new isInstanceOf<String>()
+              'stack': new TypeMatcher<String>()
             }
           }
         }));
@@ -168,7 +168,7 @@
               'data': {
                 'request': {'jsonrpc': '2.0', 'method': 'foo', 'id': 1234},
                 'full': 'FormatException: bad format',
-                'stack': new isInstanceOf<String>()
+                'stack': new TypeMatcher<String>()
               }
             }
           }));
diff --git a/test/server/utils.dart b/test/server/utils.dart
index f383f89..079201a 100644
--- a/test/server/utils.dart
+++ b/test/server/utils.dart
@@ -64,7 +64,7 @@
 /// `invalid_params` error code.
 Matcher throwsInvalidParams(String message) {
   return throwsA(predicate((error) {
-    expect(error, new isInstanceOf<json_rpc.RpcException>());
+    expect(error, new TypeMatcher<json_rpc.RpcException>());
     expect(error.code, equals(error_code.INVALID_PARAMS));
     expect(error.message, equals(message));
     return true;