docs(mdtest readme): Update readme file to reflect the latest changes

Update flutter revision number and modify the installation instruction
in the readme file.  Add example pointers in readme.

Change-Id: I0174c2a5698c9e27c1829ac0204a1a78fe851016
diff --git a/FLUTTER_VERSION b/FLUTTER_VERSION
index 4581483..e22ddd0 100644
--- a/FLUTTER_VERSION
+++ b/FLUTTER_VERSION
@@ -1 +1 @@
-646b5350d1d1c6e39c1c9f1cbb199d958cc6684b
+a194e59390838dafd659a0a1a45f546d1a997b0f
diff --git a/mdtest/README.md b/mdtest/README.md
index ecf005e..27a6870 100644
--- a/mdtest/README.md
+++ b/mdtest/README.md
@@ -1,10 +1,10 @@
 # mdtest: Multi-Device Applicatoin Testing Framework
 
-`mdtest` is a command line tool built on top of [flutter](https://flutter.io/)
-for integration testing.  The tool wraps several flutter commands and implements
+`mdtest` is a command line tool built on top of [Flutter](https://flutter.io/)
+for integration testing.  The tool wraps several Flutter commands and implements
 algorithms to deliver a robust end to end testing experience for multi-device
-applications.  `mdtest` targets at multi-device flutter apps and provides a
-public API that wraps flutter driver API and allows testers to write portable
+applications.  `mdtest` targets at multi-device Flutter apps and provides a
+public API that wraps Flutter driver API and allows testers to write portable
 test scripts across platforms.
 
 # Requirements:
@@ -15,12 +15,13 @@
 
 * Tools
   - [Dart](https://www.dartlang.org/): must be installed and accessible from
-   `PATH`
+   `PATH`.
   - PUB: comes with Dart and must be accessible from `PATH`.
-  - [Flutter](https://flutter.io/): must be installed and accessible from `PATH`.
-   `flutter doctor` should report no error
+  - [Flutter](https://flutter.io/): must be installed and accessible from
+   `PATH`.  `flutter doctor` should report no error.  Please refer to the
+   [next section](#installing-mdtest) for installation.
   - [ADB](http://developer.android.com/tools/help/adb.html): must be installed
-   and accessible from `PATH`
+   and accessible from `PATH`.
   - LCOV: `sudo apt-get install lcov` on Linux, `brew install lcov` on Mac OS.
     Must be installed and accessible from `PATH`.
   - [Homebrew](http://brew.sh/): must be installed on Mac OS and accessible from
@@ -30,38 +31,46 @@
 
 # Installing mdtest
 
-## Clone from Github
+## Clone baku repo
 
 To get `mdtest`, use `git` to clone the [baku](https://github.com/vanadium/baku)
 repository and then add the `mdtest` tool to `PATH`
 
 ```
 $ git clone git@github.com:vanadium/baku.git
-$ export PATH="$(pwd)/mdtest/bin:$PATH"
+$ cd baku
+baku$ export PATH="$(pwd)/mdtest/bin:$PATH"
 ```
-Open mdtest/pubspec.yaml file and make the following change:
 
-replace
- ```
- dlog:
-   path: ../../../../third_party/dart/dlog
- ```
-with
- ```
- dlog: 0.0.5
- ```
-replace
- ```
- flutter_driver:
-   path: ../deps/flutter/packages/flutter_driver
- ```
-with
- ```
- flutter_driver:
-   path: ${path/to/flutter}/packages/flutter_driver
- ```
+## Install Flutter
 
-The first time you run the `mdtest` command, it will build the tool ifself.  If
+Run `make` under the baku directory and it will `git clone` Flutter repo under
+deps folder.  Add `flutter` to `PATH` by
+
+```
+baku$ make
+baku$ export PATH="$(pwd)/deps/flutter/bin:$PATH"
+```
+
+`mdtest` will depends on the Flutter tool under deps folder by default.  To use
+Flutter under another location, you need to add it into `PATH` and change the
+pubspec.yaml under mdtest/dart-packages/mdtest_api folder.
+
+Replace
+
+```
+flutter_driver:
+  path: ../../../deps/flutter/packages/flutter_driver
+```
+
+with
+
+```
+flutter_driver:
+  path: ${path/to/flutter}/packages/flutter_driver
+```
+
+The first time you run the `mdtest` command, it will build the tool itself.  If
 you see Build Success, then `mdtest` is ready to go.  You can run `mdtest
 doctor` to check if all dependent tools are installed before you run any test
 script.
@@ -76,14 +85,14 @@
 is the way to tell `mdtest` what kind of devices you want your applications to
 run on.  The spec file gives you the flexibility to choose your app device
 either uniquely by specifying the device id, or roughly by specifying some
-properties of the devices.  The device nickname refers to a flutter driver
+properties of the devices.  The device nickname refers to a Flutter driver
 instance that will be used to automate the application and device that satisfiy
-the test spec.  You can use the nickname to create a flutter driver instance in
+the test spec.  You can use the nickname to create a Flutter driver instance in
 your test script.  The ability to roughly specify device requirements and refer
 a driver instance by its nickname makes your test script portable to any
 platform anywhere in the world, as long as sufficient available devices are
 detected by `mdtest`.  The test scripts specified in the test spec should
-contain flutter driver tests for integration testing.
+contain Flutter driver tests for integration testing.
 
 `mdtest` uses a test spec to find devices that each application can run on based
 on the given device properties and initiate the test runs.  The test spec is in
@@ -137,16 +146,16 @@
    overlapping screen ranges resolved.
 
  * `app-root` (required): The "app-root" attribute specifies the path to the
-   flutter app which you want to run on the device.  The path should point to
+   Flutter app which you want to run on the device.  The path should point to
    the app root directory.  If a relative path is used, it must be relative to
    the directory that contains the test spec file.
 
  * `app-path` (required): The "app-path" attribute points to the instrumented
-   flutter app that uses flutter driver plugin.  The path should point to a dart
+   Flutter app that uses Flutter driver plugin.  The path should point to a dart
    file that contains an instrumented main function which invokes the actual app
    main function.  If a relative path is used, it must be relative to the path
    in the `app-root`. For more information, please refer to
-   [flutter integration testing](https://flutter.io/testing/#integration-testing).
+   [Flutter integration testing](https://flutter.io/testing/#integration-testing).
 
 You can add arbitraty number of device specs by repeatedly adding attributes
 following the rules above.  `mdtest create` can be used to create a test spec
@@ -255,7 +264,7 @@
     generate HTML report.  If you want to generate a coverage report, you must
     provide a coverage data file in LCOV format.  If you want to generate a test
     report, you must provide a test data file in JSON format.  Must be set.
-  - `--lib` points to the path to the flutter application lib folder that your
+  - `--lib` points to the path to the Flutter application lib folder that your
     code coverage data refers to.  This option is only used if you want to
     generate a code coverage report.
   - `--output` points to the path of the directory where the HTML report will be
@@ -263,11 +272,11 @@
 
 ## Writing Tests
 
-`mdtest` provides a DriverMap class which maps every nickname to a flutter
-driver instance.  You can retrieve the corresponding flutter driver instance by
+`mdtest` provides a DriverMap class which maps every nickname to a Flutter
+driver instance.  You can retrieve the corresponding Flutter driver instance by
 providing the nickname, which is specified in the test spec.  DriverMap class
-will lazy initialize the flutter driver the first time you retrieve it.  Once
-you get the flutter driver instance, you can invoke any public methods that
+will lazy initialize the Flutter driver the first time you retrieve it.  Once
+you get the Flutter driver instance, you can invoke any public methods that
 the FlutterDriver class provides.  To use this wrapper, you should add the following
 import statement in your test scripts:
 
@@ -323,5 +332,11 @@
 ```
 
 `mdtest create` can be used to create a sample test script for you.  The way to
-write integration tests for flutter apps follows
-[flutter integration testing](https://flutter.io/testing/#integration-testing).
+write integration tests for Flutter apps follows
+[Flutter integration testing](https://flutter.io/testing/#integration-testing).
+
+# Examples
+
+`mdtest` comes with a [shared counter example](examples/shared-counter) and a
+[chat example](examples/chat).  You can navigate to those examples and start
+running `mdtest`.