Remove deprecated methods (#204)

* Remove deprecated methods

* Clean up

* More clean ups
diff --git a/lib/async_core.dart b/lib/async_core.dart
index 29c0dfc..29a2422 100644
--- a/lib/async_core.dart
+++ b/lib/async_core.dart
@@ -14,7 +14,7 @@
 
 library webdriver.core;
 
-import 'dart:async' show Future, Stream, StreamController;
+import 'dart:async' show Future, Stream;
 import 'dart:collection' show UnmodifiableMapView;
 import 'dart:convert' show base64;
 import 'dart:math' show Point, Rectangle;
diff --git a/lib/src/async/web_driver.dart b/lib/src/async/web_driver.dart
index f6003bb..fe65ba7 100644
--- a/lib/src/async/web_driver.dart
+++ b/lib/src/async/web_driver.dart
@@ -28,19 +28,12 @@
   /// If true, WebDriver actions are recorded as [WebDriverCommandEvent]s.
   bool notifyListeners = true;
 
-  final _onCommandController =
-      new StreamController<WebDriverCommandEvent>.broadcast();
-
   final _commandListeners = <WebDriverListener>[];
 
   WebDriver(this._commandProcessor, this.uri, this.id, this.capabilities,
       {this.filterStackTraces: true})
       : this._prefix = uri.resolve('session/$id/');
 
-  /// Deprecated in favor of addEventListener.
-  @deprecated
-  Stream<WebDriverCommandEvent> get onCommand => _onCommandController.stream;
-
   /// Preferred method for registering listeners. Listeners are expected to
   /// return a Future. Use new Future.value() for synchronous listeners.
   void addEventListener(WebDriverListener listener) =>
@@ -149,16 +142,6 @@
     return base64.decode(await base64Encoded);
   }
 
-  /// Take a screenshot of the current page as PNG as stream of uint8.
-  ///
-  /// Don't use this method. Prefer [captureScreenshotAsBase64] or
-  /// [captureScreenshotAsList]. Returning the data as Stream<int> can be very
-  /// slow.
-  @Deprecated('Use captureScreenshotAsBase64 or captureScreenshotAsList!')
-  Stream<int> captureScreenshot() async* {
-    yield* new Stream.fromIterable(await captureScreenshotAsList());
-  }
-
   /// Inject a snippet of JavaScript into the page for execution in the context
   /// of the currently selected frame. The executed script is assumed to be
   /// asynchronous and must signal that is done by invoking the provided
@@ -242,7 +225,6 @@
         if (_previousEvent == null) {
           throw new Error(); // This should be impossible.
         }
-        _onCommandController.add(_previousEvent);
         for (WebDriverListener listener in _commandListeners) {
           await listener(_previousEvent);
         }
diff --git a/test/async_command_event_test.dart b/test/async_command_event_test.dart
index eb51fe9..0db2ec1 100644
--- a/test/async_command_event_test.dart
+++ b/test/async_command_event_test.dart
@@ -15,8 +15,6 @@
 @TestOn('vm')
 library webdriver.command_event_test;
 
-import 'dart:async';
-
 import 'package:stack_trace/stack_trace.dart';
 import 'package:test/test.dart';
 import 'package:webdriver/async_core.dart';
@@ -29,18 +27,17 @@
     WebDriver driver;
 
     var events = <WebDriverCommandEvent>[];
-    StreamSubscription sub;
 
     setUp(() async {
       driver = await config.createTestDriver();
-      sub = driver.onCommand.listen(events.add);
+      driver.addEventListener((WebDriverCommandEvent e) {
+        events.add(e);
+      });
 
       await driver.get(config.testPagePath);
     });
 
     tearDown(() async {
-      sub.cancel();
-      sub = null;
       events.clear();
       await driver.quit();
       driver = null;
diff --git a/test/async_web_driver_test.dart b/test/async_web_driver_test.dart
index cc2ea25..a5a9327 100644
--- a/test/async_web_driver_test.dart
+++ b/test/async_web_driver_test.dart
@@ -159,12 +159,6 @@
         expect(await e.text, 'new text');
       });
 
-      test('captureScreenshot', () async {
-        var screenshot = await driver.captureScreenshot().toList();
-        expect(screenshot, hasLength(isPositive));
-        expect(screenshot, everyElement(const TypeMatcher<int>()));
-      });
-
       test('captureScreenshotAsList', () async {
         var screenshot = await driver.captureScreenshotAsList();
         expect(screenshot, hasLength(isPositive));
@@ -184,7 +178,7 @@
         });
 
         try {
-          driver.timeouts.setScriptTimeout(const Duration(seconds: 1));
+          await driver.timeouts.setScriptTimeout(const Duration(seconds: 1));
           await driver.executeAsync('', []);
           fail('Did not throw timeout as expected');
         } catch (e) {
diff --git a/test/support/async_test.dart b/test/support/async_test.dart
index bd9e104..f36200f 100644
--- a/test/support/async_test.dart
+++ b/test/support/async_test.dart
@@ -42,7 +42,7 @@
       var lock = new Lock();
       var secondLockAcquired = false;
       await lock.acquire();
-      lock.acquire().then((_) => secondLockAcquired = true);
+      await lock.acquire().then((_) => secondLockAcquired = true);
       // Make sure that lock is not unacquired just because of timing
       await new Future.delayed(const Duration(seconds: 1));
       expect(secondLockAcquired, isFalse);