Fix the Rust client library on Windows (#926)
Fix the Rust client library on Windows (#926)

Summary:
The Rust library doesn't build on Windows since recent versions of Tokio removed the `PollEvented` abstraction. However a new `NamedPipeClient` type has since been introduced that directly implements `AsyncRead` and `AsyncWrite` for a named pipe client, so I modified the `NamedPipe` struct to be a simple convenience wrapper around the tokio implementation.

Pull Request resolved: https://github.com/facebook/watchman/pull/926

Test Plan:
```
$ hg co bfee1cdae8dc
$ cargo check
...
    Checking watchman_client v0.6.1 (C:\open\fbsource\fbcode\watchman\rust\watchman_client)
    Finished dev [unoptimized + debuginfo] target(s) in 29.77s
$ cargo test
...
     Running unittests (target\debug\deps\watchman_client-f44c1f736dcb40c3.exe)

running 7 tests
test pdu::tests::test_content_sha1hex_hash ... ok
test pdu::tests::test_content_sha1hex_none ... ok
test tests::connection_builder_paths ... ok
test pdu::tests::test_content_sha1hex_error ... ok
test tests::test_decoder_err ... ok
test expr::tests::exprs ... ok
test tests::test_decoder ... ok

test result: ok. 7 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
...
   Doc-tests watchman_client

running 3 tests
test src\pdu.rs - pdu::FileType (line 660) ... ok
test src\lib.rs - Client::query (line 796) ... ok
test src\fields.rs - query_result_type (line 258) ... ok

test result: ok. 3 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 6.48s
```

Reviewed By: xavierd

Differential Revision: D29597937

Pulled By: fanzeyi

fbshipit-source-id: ce1cb99f56b2d628550a0aa9c28e7cf421a1c1d8

nodakai/watchman,nodakai/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,nodakai/watchman,nodakai/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,nodakai/watchman,facebook/watchman,facebook/watchman,nodakai/watchman