[bump] Bump most crates to latest minor versions

This bumps the following crates:

* bitfield to 0.13.1
* byteorder to 1.2.7
* bytes to 0.4.11
* euclid to 0.19.3
* filetime to 0.2.4
* hyper to 0.12.14
* itertools to 0.7.9
* lazy_static to 1.2.0
* log to 0.4.6
* memchr to 2.1.1
* num-bigint to 0.2.1
* proc-macro2 to 0.4.24
* redox_syscall to 0.1.42
* quote to 0.6.10
* ryu to 0.2.7
* same-file to 1.0.4
* serde_json to 1.0.33
* smallvec to 0.6.6
* syn to 0.15.21
* synstructure to 0.10.1
* url to 1.7.2
* walkdir to 2.2.7

Change-Id: I5275ac0d55452b061acfda8aa4d0b3a8fb85fbb1
diff --git a/rustc_deps/Cargo.lock b/rustc_deps/Cargo.lock
index bc64055..c8f224d 100644
--- a/rustc_deps/Cargo.lock
+++ b/rustc_deps/Cargo.lock
@@ -8,7 +8,7 @@
 version = "0.6.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -65,7 +65,7 @@
 version = "0.8.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -74,7 +74,7 @@
 version = "0.9.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -83,7 +83,7 @@
 version = "0.9.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -92,7 +92,7 @@
 version = "1.0.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -103,7 +103,7 @@
 
 [[package]]
 name = "bitfield"
-version = "0.13.0"
+version = "0.13.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
@@ -164,15 +164,15 @@
 
 [[package]]
 name = "byteorder"
-version = "1.2.6"
+version = "1.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
 name = "bytes"
-version = "0.4.10"
+version = "0.4.11"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -242,7 +242,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "adler32 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "gzip-header 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -323,7 +323,7 @@
 
 [[package]]
 name = "euclid"
-version = "0.19.2"
+version = "0.19.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -343,10 +343,10 @@
 version = "0.1.3"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 0.15.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "synstructure 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 0.15.21 (registry+https://github.com/rust-lang/crates.io-index)",
+ "synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -356,12 +356,12 @@
 
 [[package]]
 name = "filetime"
-version = "0.2.1"
+version = "0.2.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+ "redox_syscall 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -393,30 +393,31 @@
  "base64 0.9.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "bit-vec 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "bitfield 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bitfield 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)",
  "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "clap 2.32.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "crossbeam 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "euclid 0.19.2 (registry+https://github.com/rust-lang/crates.io-index)",
+ "euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "flate2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "font-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures-preview 0.3.0-alpha.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "getopts 0.2.18 (registry+https://github.com/rust-lang/crates.io-index)",
  "hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "hyper 0.12.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "hyper 0.12.14 (registry+https://github.com/rust-lang/crates.io-index)",
+ "itertools 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "num-bigint 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-bigint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "parking_lot 0.4.8 (registry+https://github.com/rust-lang/crates.io-index)",
  "pin-utils 0.1.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -427,9 +428,10 @@
  "rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "structopt 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
+ "structopt-derive 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)",
  "tempfile 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
  "timebomb 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -437,7 +439,7 @@
  "unicase 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-segmentation 1.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "vte 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "xi-core-lib 0.2.0",
@@ -487,7 +489,7 @@
  "futures-channel-preview 0.3.0-alpha.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures-core-preview 0.3.0-alpha.9 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures-util-preview 0.3.0-alpha.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "pin-utils 0.1.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -574,13 +576,13 @@
 version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
  "http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
  "indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "string 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -596,7 +598,7 @@
 version = "0.1.13"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -608,17 +610,17 @@
 
 [[package]]
 name = "hyper"
-version = "0.12.13"
+version = "0.12.14"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
  "h2 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
  "http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)",
  "httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
  "tokio-io 0.1.10 (registry+https://github.com/rust-lang/crates.io-index)",
  "want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -650,7 +652,7 @@
 
 [[package]]
 name = "itertools"
-version = "0.7.8"
+version = "0.7.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "either 1.5.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -663,11 +665,8 @@
 
 [[package]]
 name = "lazy_static"
-version = "1.1.0"
+version = "1.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
-]
 
 [[package]]
 name = "libc"
@@ -679,12 +678,12 @@
 version = "0.3.9"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "log"
-version = "0.4.5"
+version = "0.4.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -705,7 +704,7 @@
 
 [[package]]
 name = "memchr"
-version = "2.1.0"
+version = "2.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -790,7 +789,7 @@
 version = "0.2.0"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "num-bigint 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-bigint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-complex 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -800,7 +799,7 @@
 
 [[package]]
 name = "num-bigint"
-version = "0.2.0"
+version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -838,7 +837,7 @@
 version = "0.2.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "num-bigint 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "num-bigint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)",
  "num-traits 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -880,7 +879,7 @@
 dependencies = [
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.6",
 ]
 
@@ -935,7 +934,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "base64 0.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -952,7 +951,7 @@
 
 [[package]]
 name = "proc-macro2"
-version = "0.4.20"
+version = "0.4.24"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -969,10 +968,10 @@
 
 [[package]]
 name = "quote"
-version = "0.6.8"
+version = "0.6.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1022,7 +1021,7 @@
 
 [[package]]
 name = "redox_syscall"
-version = "0.1.40"
+version = "0.1.42"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
@@ -1030,7 +1029,7 @@
 version = "0.1.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+ "redox_syscall 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1039,7 +1038,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "aho-corasick 0.6.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "regex-syntax 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "thread_local 0.3.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1070,19 +1069,19 @@
  "brotli2 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "deflate 0.7.19 (registry+https://github.com/rust-lang/crates.io-index)",
- "filetime 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "multipart 0.13.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "num_cpus 1.8.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "term 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "threadpool 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
  "tiny_http 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1108,7 +1107,7 @@
 
 [[package]]
 name = "ryu"
-version = "0.2.6"
+version = "0.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 
 [[package]]
@@ -1123,7 +1122,7 @@
 
 [[package]]
 name = "same-file"
-version = "1.0.3"
+version = "1.0.4"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "winapi-util 0.1.1",
@@ -1139,18 +1138,18 @@
 version = "1.0.80"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 0.15.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 0.15.21 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "serde_json"
-version = "1.0.32"
+version = "1.0.33"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)",
- "ryu 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -1182,7 +1181,7 @@
 
 [[package]]
 name = "smallvec"
-version = "0.6.5"
+version = "0.6.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1217,29 +1216,29 @@
 version = "0.2.12"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 0.15.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 0.15.21 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "syn"
-version = "0.15.13"
+version = "0.15.21"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
 name = "synstructure"
-version = "0.10.0"
+version = "0.10.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 0.15.13 (registry+https://github.com/rust-lang/crates.io-index)",
+ "proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)",
+ "quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "syn 0.15.21 (registry+https://github.com/rust-lang/crates.io-index)",
  "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -1251,12 +1250,12 @@
  "bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "flate2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
- "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "plist 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
- "walkdir 2.2.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
+ "walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1276,7 +1275,7 @@
  "cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
  "rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+ "redox_syscall 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
  "remove_dir_all 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.6",
 ]
@@ -1286,7 +1285,7 @@
 version = "0.5.1"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.6",
 ]
 
@@ -1296,7 +1295,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+ "redox_syscall 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
  "redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -1313,7 +1312,7 @@
 version = "0.3.6"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1330,7 +1329,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
- "redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
+ "redox_syscall 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.6",
 ]
 
@@ -1352,8 +1351,8 @@
  "chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "chunked_transfer 0.3.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "encoding 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
- "url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
+ "url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1361,9 +1360,9 @@
 version = "0.1.10"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)",
+ "bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)",
  "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1384,7 +1383,7 @@
 version = "0.1.8"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
 [[package]]
@@ -1451,7 +1450,7 @@
 
 [[package]]
 name = "url"
-version = "1.7.1"
+version = "1.7.2"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1494,10 +1493,10 @@
 
 [[package]]
 name = "walkdir"
-version = "2.2.5"
+version = "2.2.7"
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
- "same-file 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)",
+ "same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)",
  "winapi 0.3.6",
  "winapi-util 0.1.1",
 ]
@@ -1508,7 +1507,7 @@
 source = "registry+https://github.com/rust-lang/crates.io-index"
 dependencies = [
  "futures 0.1.25 (registry+https://github.com/rust-lang/crates.io-index)",
- "log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)",
+ "log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)",
  "try-lock 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
 
@@ -1529,10 +1528,10 @@
 name = "xi-core-lib"
 version = "0.2.0"
 dependencies = [
- "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "syntect 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "time 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1549,7 +1548,7 @@
 version = "0.2.0"
 dependencies = [
  "bytecount 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
- "memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
 ]
@@ -1561,7 +1560,7 @@
  "crossbeam 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "xi-trace 0.1.0",
 ]
 
@@ -1569,7 +1568,7 @@
 name = "xi-trace"
 version = "0.1.0"
 dependencies = [
- "lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
+ "lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)",
  "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
@@ -1583,7 +1582,7 @@
  "bincode 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
  "serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)",
- "serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)",
+ "serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)",
  "xi-trace 0.1.0",
 ]
 
@@ -1618,7 +1617,7 @@
 "checksum bincode 0.9.2 (registry+https://github.com/rust-lang/crates.io-index)" = "9a6301db0b49fb63551bc15b5ae348147101cdf323242b93ec7546d5002ff1af"
 "checksum bincode 1.0.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9f2fb9e29e72fd6bc12071533d5dc7664cb01480c59406f656d7ac25c7bd8ff7"
 "checksum bit-vec 0.5.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4440d5cb623bb7390ae27fec0bb6c61111969860f8e3ae198bfa0663645e67cf"
-"checksum bitfield 0.13.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0cdfb9275e899a694a3de63ef97a727c38f0be15765468c23f6e29e4bb461a46"
+"checksum bitfield 0.13.1 (registry+https://github.com/rust-lang/crates.io-index)" = "a260ed6b9f3ca16a4389390b1b1cd15a3bc0a9d3e63b1ef39f4978cec58a4e83"
 "checksum bitflags 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "228047a76f468627ca71776ecdebd732a3423081fcf5125585bcd7c49886ce12"
 "checksum block-buffer 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "a076c298b9ecdb530ed9d967e74a6027d6a7478924520acddcddc24c1c8ab3ab"
 "checksum brotli-sys 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4445dea95f4c2b41cde57cc9fee236ae4dbae88d8fcbdb4750fc1bb5d86aaecd"
@@ -1627,8 +1626,8 @@
 "checksum build_const 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "39092a32794787acd8525ee150305ff051b0aa6cc2abaf193924f5ab05425f39"
 "checksum byte-tools 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "560c32574a12a89ecd91f5e742165893f86e3ab98d21f8ea548658eb9eef5f40"
 "checksum bytecount 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "f861d9ce359f56dbcb6e0c2a1cb84e52ad732cadb57b806adeb3c7668caccbd8"
-"checksum byteorder 1.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "90492c5858dd7d2e78691cfb89f90d273a2800fc11d98f60786e5d87e2f83781"
-"checksum bytes 0.4.10 (registry+https://github.com/rust-lang/crates.io-index)" = "0ce55bd354b095246fc34caf4e9e242f5297a7fd938b090cadfea6eee614aa62"
+"checksum byteorder 1.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d"
+"checksum bytes 0.4.11 (registry+https://github.com/rust-lang/crates.io-index)" = "40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa"
 "checksum cc 1.0.25 (registry+https://github.com/rust-lang/crates.io-index)" = "f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16"
 "checksum cfg-if 0.1.6 (registry+https://github.com/rust-lang/crates.io-index)" = "082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"
 "checksum chrono 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"
@@ -1648,11 +1647,11 @@
 "checksum encoding-index-singlebyte 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "3351d5acffb224af9ca265f435b859c7c01537c0849754d3db3fdf2bfe2ae84a"
 "checksum encoding-index-tradchinese 1.20141219.5 (registry+https://github.com/rust-lang/crates.io-index)" = "fd0e20d5688ce3cab59eb3ef3a2083a5c77bf496cb798dc6fcdb75f323890c18"
 "checksum encoding_index_tests 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a246d82be1c9d791c5dfde9a2bd045fc3cbba3fa2b11ad558f27d01712f00569"
-"checksum euclid 0.19.2 (registry+https://github.com/rust-lang/crates.io-index)" = "4019b11e3498dd84d8893848c3d70e40c6dc71bb277ae5252cc16af006d06872"
+"checksum euclid 0.19.3 (registry+https://github.com/rust-lang/crates.io-index)" = "600657e7e5c03bfbccdc68721bc3b5abcb761553973387124eae9c9e4f02c210"
 "checksum failure 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"
 "checksum failure_derive 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "64c2d913fe8ed3b6c6518eedf4538255b989945c14c2a7d5cbff62a5e2120596"
 "checksum fake-simd 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "e88a8acf291dafb59c2d96e8f59828f3838bb1a70398823ade51a84de6a6deed"
-"checksum filetime 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "da4b9849e77b13195302c174324b5ba73eec9b236b24c221a61000daefb95c5f"
+"checksum filetime 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "a2df5c1a8c4be27e7707789dc42ae65976e60b394afd293d1419ab915833e646"
 "checksum flate2 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "3b0c7353385f92079524de3b7116cf99d73947c08a7472774e9b3b04bff3b901"
 "checksum fnv 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"
 "checksum font-rs 0.1.3 (registry+https://github.com/rust-lang/crates.io-index)" = "33939d997b0ef798cc92c9cc49a535c9b085273e121cc8e8281561be1fd76cd2"
@@ -1672,19 +1671,19 @@
 "checksum hex 0.3.2 (registry+https://github.com/rust-lang/crates.io-index)" = "805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"
 "checksum http 0.1.13 (registry+https://github.com/rust-lang/crates.io-index)" = "24f58e8c2d8e886055c3ead7b28793e1455270b5fb39650984c224bc538ba581"
 "checksum httparse 1.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"
-"checksum hyper 0.12.13 (registry+https://github.com/rust-lang/crates.io-index)" = "95ffee0d1d30de4313fdaaa485891ce924991d45bbc18adfc8ac5b1639e62fbb"
+"checksum hyper 0.12.14 (registry+https://github.com/rust-lang/crates.io-index)" = "2f60ae467ef4fc5eba9a34d31648c9c8ed902faf45a217f6734ce9ea64779ac7"
 "checksum idna 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "38f09e0f0b1fb55fdee1f17470ad800da77af5186a1a76c026b679358b7e844e"
 "checksum indexmap 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"
 "checksum iovec 0.1.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"
-"checksum itertools 0.7.8 (registry+https://github.com/rust-lang/crates.io-index)" = "f58856976b776fedd95533137617a02fb25719f40e7d9b01c7043cd65474f450"
+"checksum itertools 0.7.9 (registry+https://github.com/rust-lang/crates.io-index)" = "7cef527957675adbb9ec77a7e3c44c69d729dc0a80e64fe7d380138ef851af1d"
 "checksum itoa 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"
-"checksum lazy_static 1.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ca488b89a5657b0a2ecd45b95609b3e848cf1755da332a0da46e2b2b1cb371a7"
+"checksum lazy_static 1.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"
 "checksum libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)" = "76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d"
 "checksum log 0.3.9 (registry+https://github.com/rust-lang/crates.io-index)" = "e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"
-"checksum log 0.4.5 (registry+https://github.com/rust-lang/crates.io-index)" = "d4fcce5fa49cc693c312001daf1d13411c4a5283796bac1084299ea3e567113f"
+"checksum log 0.4.6 (registry+https://github.com/rust-lang/crates.io-index)" = "c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"
 "checksum matches 0.1.8 (registry+https://github.com/rust-lang/crates.io-index)" = "7ffc5c5338469d4d3ea17d269fa8ea3512ad247247c30bd2df69e68309ed0a08"
 "checksum memchr 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"
-"checksum memchr 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "4b3629fe9fdbff6daa6c33b90f7c08355c1aca05a3d01fa8063b822fcf185f3b"
+"checksum memchr 2.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16"
 "checksum mime 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"
 "checksum mime_guess 1.8.6 (registry+https://github.com/rust-lang/crates.io-index)" = "2d4c0961143b8efdcfa29c3ae63281601b446a4a668165454b6c90f8024954c5"
 "checksum miniz_oxide 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "5ad30a47319c16cde58d0314f5d98202a80c9083b5f61178457403dfb14e509c"
@@ -1693,7 +1692,7 @@
 "checksum net2 0.2.33 (registry+https://github.com/rust-lang/crates.io-index)" = "42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"
 "checksum nom 3.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05aec50c70fd288702bcd93284a8444607f3292dbdf2a30de5ea5dcdbe72287b"
 "checksum num 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "cf4825417e1e1406b3782a8ce92f4d53f26ec055e3622e1881ca8e9f5f9e08db"
-"checksum num-bigint 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3eceac7784c5dc97c2d6edf30259b4e153e6e2b42b3c85e9a6e9f45d06caef6e"
+"checksum num-bigint 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "10b8423ea72ec64751198856a853e07b37087cfc9b53a87ecb19bff67b6d1320"
 "checksum num-complex 0.2.1 (registry+https://github.com/rust-lang/crates.io-index)" = "107b9be86cd2481930688277b675b0114578227f034674726605b8a482d8baf8"
 "checksum num-integer 0.1.39 (registry+https://github.com/rust-lang/crates.io-index)" = "e83d528d2677f0518c570baf2b7abdcf0cd2d248860b68507bdcb3e91d4c0cea"
 "checksum num-iter 0.1.37 (registry+https://github.com/rust-lang/crates.io-index)" = "af3fdbbc3291a5464dc57b03860ec37ca6bf915ed6ee385e7c6c052c422b2124"
@@ -1711,15 +1710,15 @@
 "checksum pin-utils 0.1.0-alpha.3 (registry+https://github.com/rust-lang/crates.io-index)" = "42d42579e40cc2de14252a729e9727439657cf68a4997593aafe63728544ecb3"
 "checksum plist 0.2.4 (registry+https://github.com/rust-lang/crates.io-index)" = "c61ac2afed2856590ae79d6f358a24b85ece246d2aa134741a66d589519b7503"
 "checksum pretty_assertions 0.5.1 (registry+https://github.com/rust-lang/crates.io-index)" = "3a029430f0d744bc3d15dd474d591bed2402b645d024583082b9f63bb936dac6"
-"checksum proc-macro2 0.4.20 (registry+https://github.com/rust-lang/crates.io-index)" = "3d7b7eaaa90b4a90a932a9ea6666c95a389e424eff347f0f793979289429feee"
+"checksum proc-macro2 0.4.24 (registry+https://github.com/rust-lang/crates.io-index)" = "77619697826f31a02ae974457af0b29b723e5619e113e9397b8b82c6bd253f09"
 "checksum pulse 0.5.3 (registry+https://github.com/rust-lang/crates.io-index)" = "655612b6c8d96a8a02f331fe296cb4f925b68e87c1d195544675abca2d9b9af0"
-"checksum quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "dd636425967c33af890042c483632d33fa7a18f19ad1d7ea72e8998c6ef8dea5"
+"checksum quote 0.6.10 (registry+https://github.com/rust-lang/crates.io-index)" = "53fa22a1994bd0f9372d7a816207d8a2677ad0325b073f5c5332760f0fb62b5c"
 "checksum rand 0.3.22 (registry+https://github.com/rust-lang/crates.io-index)" = "15a732abf9d20f0ad8eeb6f909bf6868722d9a06e1e50802b6a70351f40b4eb1"
 "checksum rand 0.4.3 (registry+https://github.com/rust-lang/crates.io-index)" = "8356f47b32624fef5b3301c1be97e5944ecdd595409cc5da11d05f211db6cfbd"
 "checksum rand 0.5.5 (registry+https://github.com/rust-lang/crates.io-index)" = "e464cd887e869cddcae8792a4ee31d23c7edd516700695608f5b98c67ee0131c"
 "checksum rand_core 0.2.2 (registry+https://github.com/rust-lang/crates.io-index)" = "1961a422c4d189dfb50ffa9320bf1f2a9bd54ecb92792fb9477f99a1045f3372"
 "checksum rand_core 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0905b6b7079ec73b314d4c748701f6931eb79fd97c668caa3f1899b22b32c6db"
-"checksum redox_syscall 0.1.40 (registry+https://github.com/rust-lang/crates.io-index)" = "c214e91d3ecf43e9a4e41e578973adeb14b474f2bee858742d127af75a0112b1"
+"checksum redox_syscall 0.1.42 (registry+https://github.com/rust-lang/crates.io-index)" = "cf8fb82a4d1c9b28f1c26c574a5b541f5ffb4315f6c9a791fa47b6a04438fe93"
 "checksum redox_termios 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "7e891cfe48e9100a70a3b6eb652fef28920c117d366339687bd5576160db0f76"
 "checksum regex 1.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "ee84f70c8c08744ea9641a731c7fadb475bf2ecc52d7f627feb833e0b3990467"
 "checksum regex-syntax 0.6.3 (registry+https://github.com/rust-lang/crates.io-index)" = "fbc557aac2b708fe84121caf261346cc2eed71978024337e42eb46b8a252ac6e"
@@ -1727,25 +1726,25 @@
 "checksum rouille 2.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "0845b9c39ba772da769fe2aaa4d81bfd10695a7ea051d0510702260ff4159841"
 "checksum rustc-demangle 0.1.9 (registry+https://github.com/rust-lang/crates.io-index)" = "bcfe5b13211b4d78e5c2cadfebd7769197d95c639c35a50057eb4c05de811395"
 "checksum rustc-serialize 0.3.24 (registry+https://github.com/rust-lang/crates.io-index)" = "dcf128d1287d2ea9d80910b5f1120d0b8eede3fbf1abe91c40d39ea7d51e6fda"
-"checksum ryu 0.2.6 (registry+https://github.com/rust-lang/crates.io-index)" = "7153dd96dade874ab973e098cb62fcdbb89a03682e46b144fd09550998d4a4a7"
+"checksum ryu 0.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "eb9e9b8cde282a9fe6a42dd4681319bfb63f121b8a8ee9439c6f4107e58a46f7"
 "checksum safemem 0.2.0 (registry+https://github.com/rust-lang/crates.io-index)" = "e27a8b19b835f7aea908818e871f5cc3a5a186550c30773be987e155e8163d8f"
 "checksum safemem 0.3.0 (registry+https://github.com/rust-lang/crates.io-index)" = "8dca453248a96cb0749e36ccdfe2b0b4e54a61bfef89fb97ec621eb8e0a93dd9"
-"checksum same-file 1.0.3 (registry+https://github.com/rust-lang/crates.io-index)" = "10f7794e2fda7f594866840e95f5c5962e886e228e68b6505885811a94dd728c"
+"checksum same-file 1.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "8f20c4be53a8a1ff4c1f1b2bd14570d2f634628709752f0702ecdd2b3f9a5267"
 "checksum serde 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "15c141fc7027dd265a47c090bf864cf62b42c4d228bbcf4e51a0c9e2b0d3f7ef"
 "checksum serde_derive 1.0.80 (registry+https://github.com/rust-lang/crates.io-index)" = "225de307c6302bec3898c51ca302fc94a7a1697ef0845fcee6448f33c032249c"
-"checksum serde_json 1.0.32 (registry+https://github.com/rust-lang/crates.io-index)" = "43344e7ce05d0d8280c5940cabb4964bea626aa58b1ec0e8c73fa2a8512a38ce"
+"checksum serde_json 1.0.33 (registry+https://github.com/rust-lang/crates.io-index)" = "c37ccd6be3ed1fdf419ee848f7c758eb31b054d7cd3ae3600e3bae0adf569811"
 "checksum sha1 0.6.0 (registry+https://github.com/rust-lang/crates.io-index)" = "2579985fda508104f7587689507983eadd6a6e84dd35d6d115361f530916fa0d"
 "checksum sha2 0.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "9eb6be24e4c23a84d7184280d2722f7f2731fcdd4a9d886efbfe4413e4847ea0"
 "checksum siphasher 0.2.3 (registry+https://github.com/rust-lang/crates.io-index)" = "0b8de496cf83d4ed58b6be86c3a275b8602f6ffe98d3024a869e124147a9a3ac"
 "checksum slab 0.4.1 (registry+https://github.com/rust-lang/crates.io-index)" = "5f9776d6b986f77b35c6cf846c11ad986ff128fe0b2b63a3628e3755e8d3102d"
-"checksum smallvec 0.6.5 (registry+https://github.com/rust-lang/crates.io-index)" = "153ffa32fd170e9944f7e0838edf824a754ec4c1fc64746fcc9fe1f8fa602e5d"
+"checksum smallvec 0.6.6 (registry+https://github.com/rust-lang/crates.io-index)" = "622df2d454c29a4d89b30dc3b27b42d7d90d6b9e587dbf8f67652eb7514da484"
 "checksum stable_deref_trait 1.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "dba1a27d3efae4351c8051072d619e3ade2820635c3958d826bfea39d59b54c8"
 "checksum string 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "00caf261d6f90f588f8450b8e1230fa0d5be49ee6140fdfbcb55335aff350970"
 "checksum strsim 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "bb4f380125926a99e52bc279241539c018323fab05ad6368b56f93d9369ff550"
 "checksum structopt 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "d77af7242f18c40fd19cb270985930f239ee1646cfb482050bbae9da1d18743b"
 "checksum structopt-derive 0.2.12 (registry+https://github.com/rust-lang/crates.io-index)" = "17ff01fe96de9d16e7372ae5f19dd7ece2c703b51043c3db9ea27f9e393ea311"
-"checksum syn 0.15.13 (registry+https://github.com/rust-lang/crates.io-index)" = "7b4439ee8325b4e4b57e59309c3724c9a4478eaeb4eb094b6f3fac180a3b2876"
-"checksum synstructure 0.10.0 (registry+https://github.com/rust-lang/crates.io-index)" = "ec37f4fab4bafaf6b5621c1d54e6aa5d4d059a8f84929e87abfdd7f9f04c6db2"
+"checksum syn 0.15.21 (registry+https://github.com/rust-lang/crates.io-index)" = "816b7af21405b011a23554ea2dc3f6576dc86ca557047c34098c1d741f10f823"
+"checksum synstructure 0.10.1 (registry+https://github.com/rust-lang/crates.io-index)" = "73687139bf99285483c96ac0add482c3776528beac1d97d444f6e91f203a2015"
 "checksum syntect 2.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "dc8a6f0db88d4afc340522c20d260411e746b2225b257c6b238a75de9d7cec78"
 "checksum tempdir 0.3.7 (registry+https://github.com/rust-lang/crates.io-index)" = "15f2b5fb00ccdf689e0149d1b1b3c03fead81c2b37735d812fa8bddbbf41b6d8"
 "checksum tempfile 3.0.4 (registry+https://github.com/rust-lang/crates.io-index)" = "55c1195ef8513f3273d55ff59fe5da6940287a0d7a98331254397f464833675b"
@@ -1771,14 +1770,14 @@
 "checksum unicode-width 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "882386231c45df4700b275c7ff55b6f3698780a650026380e72dabe76fa46526"
 "checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
 "checksum unreachable 1.0.0 (registry+https://github.com/rust-lang/crates.io-index)" = "382810877fe448991dfc7f0dd6e3ae5d58088fd0ea5e35189655f84e6814fa56"
-"checksum url 1.7.1 (registry+https://github.com/rust-lang/crates.io-index)" = "2a321979c09843d272956e73700d12c4e7d3d92b2ee112b31548aef0d4efc5a6"
+"checksum url 1.7.2 (registry+https://github.com/rust-lang/crates.io-index)" = "dd4e7c0d531266369519a4aa4f399d748bd37043b00bde1e4ff1f60a120b355a"
 "checksum utf8-ranges 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "796f7e48bef87609f7ade7e06495a87d5cd06c7866e6a5cbfceffc558a243737"
 "checksum utf8parse 0.1.1 (registry+https://github.com/rust-lang/crates.io-index)" = "8772a4ccbb4e89959023bc5b7cb8623a795caa7092d99f3aa9501b9484d4557d"
 "checksum vec_map 0.8.1 (registry+https://github.com/rust-lang/crates.io-index)" = "05c78687fb1a80548ae3250346c3db86a80a7cdd77bda190189f2d0a0987c81a"
 "checksum version_check 0.1.5 (registry+https://github.com/rust-lang/crates.io-index)" = "914b1a6776c4c929a602fafd8bc742e06365d4bcbe48c30f9cca5824f70dc9dd"
 "checksum void 1.0.2 (registry+https://github.com/rust-lang/crates.io-index)" = "6a02e4885ed3bc0f2de90ea6dd45ebcbb66dacffe03547fadbb0eeae2770887d"
 "checksum vte 0.3.3 (registry+https://github.com/rust-lang/crates.io-index)" = "4f42f536e22f7fcbb407639765c8fd78707a33109301f834a594758bedd6e8cf"
-"checksum walkdir 2.2.5 (registry+https://github.com/rust-lang/crates.io-index)" = "af464bc7be7b785c7ac72e266a6b67c4c9070155606f51655a650a6686204e35"
+"checksum walkdir 2.2.7 (registry+https://github.com/rust-lang/crates.io-index)" = "9d9d7ed3431229a144296213105a390676cc49c9b6a72bd19f3176c98e129fa1"
 "checksum want 0.0.6 (registry+https://github.com/rust-lang/crates.io-index)" = "797464475f30ddb8830cc529aaaae648d581f99e2036a928877dfde027ddf6b3"
 "checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
 "checksum xml-rs 0.7.0 (registry+https://github.com/rust-lang/crates.io-index)" = "3c1cb601d29fe2c2ac60a2b2e5e293994d87a1f6fa9687a31a15270f909be9c2"
diff --git a/rustc_deps/vendor/adler32/.cargo-checksum.json b/rustc_deps/vendor/adler32/.cargo-checksum.json
index 82c9744..68f24b3 100644
--- a/rustc_deps/vendor/adler32/.cargo-checksum.json
+++ b/rustc_deps/vendor/adler32/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"9ba758e68caab3ea24aaadf3a12aa624f05c05ee71a1762ffa0255bc30bb6ca6","Cargo.toml":"cf5f675a4e490f562e4ef77856341ca76945132e1095e7e37d9847c71ed37efb","LICENSE":"cd63cc3c72a6b5248bca75f73aca49dcff97de55cf6f300f10b67b19b57a45db","LICENSE-ZLIB":"fefeb20bf292c34f1e8d5114731308aac188d65aa3dc5f85bb2e9b0d007b7ab8","README.md":"77c9e2080e5ae700403343c27fe08bb616f1df92a8b42b0e7808a7b7d32eb7a2","appveyor.yml":"4873092bae0713890497e5ceae761af359d680e6cce5ce003bf38bc5c45cde44","src/lib.rs":"24e7e7923d2460c98746f91fd77c65793374e7c58ba842f1a3bbd713a2c27996"},"package":"7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"}
\ No newline at end of file
+{"files":{"Cargo.toml":"cf5f675a4e490f562e4ef77856341ca76945132e1095e7e37d9847c71ed37efb","LICENSE":"cd63cc3c72a6b5248bca75f73aca49dcff97de55cf6f300f10b67b19b57a45db","LICENSE-ZLIB":"fefeb20bf292c34f1e8d5114731308aac188d65aa3dc5f85bb2e9b0d007b7ab8","README.md":"77c9e2080e5ae700403343c27fe08bb616f1df92a8b42b0e7808a7b7d32eb7a2","appveyor.yml":"4873092bae0713890497e5ceae761af359d680e6cce5ce003bf38bc5c45cde44","src/lib.rs":"24e7e7923d2460c98746f91fd77c65793374e7c58ba842f1a3bbd713a2c27996"},"package":"7e522997b529f05601e05166c07ed17789691f562762c7f3b987263d2dedee5c"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/adler32/.travis.yml b/rustc_deps/vendor/adler32/.travis.yml
deleted file mode 100644
index dad0495..0000000
--- a/rustc_deps/vendor/adler32/.travis.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-sudo: false
-script: |
-  cargo build --verbose && \
-  cargo test --verbose && \
-  cargo doc
-after_success: |
-  [ $TRAVIS_BRANCH = master ] &&
-  [ $TRAVIS_RUST_VERSION = nightly ] &&
-  [ $TRAVIS_PULL_REQUEST = false ] &&
-  echo '<meta http-equiv=refresh content=0;url=adler32/index.html>' > target/doc/index.html &&
-  pip install --user ghp-import &&
-  $HOME/.local/bin/ghp-import -n target/doc &&
-  git push -qf https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages
diff --git a/rustc_deps/vendor/aho-corasick/.cargo-checksum.json b/rustc_deps/vendor/aho-corasick/.cargo-checksum.json
index 1a37b83..7caae16 100644
--- a/rustc_deps/vendor/aho-corasick/.cargo-checksum.json
+++ b/rustc_deps/vendor/aho-corasick/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"b869cb0cca6ec13606e3ece69608480b18434cdfce871029d792c596d72fbbc4","COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"2b5e42ae354311f29e53b600dffb398db134de1747c4ac96fd16fc16fbb9d4d1","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","README.md":"9fb3256ce6fc5b25c9a92fe3b8f7a82a26d380fcf6121c934c2bb6f85102fede","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","benches/bench.rs":"c74b297ed2217e4784614573a8b44c61dfe5173985c43616e43a3f608973ff2e","benches/random.txt":"9386fb3efedc7ffbd09fb49088347f1056bc2d90a861009fa2f804cdb714efcb","examples/dict-search.rs":"0dac88736039262dfb8df9ff85ece18de90dd4da9b8b895cf4d57bf33167b224","src/autiter.rs":"b3bd067bf6c25708109870afbb5d09e9a04d0f2f596f59c368e42ddbc7c65f93","src/full.rs":"acb6389d210e7bc4125f0ebb6f268b712e60ec50b58b9c4094a8083bb8f4caf2","src/lib.rs":"fdddbb688fbc71461242b94e1cfb3dfbf0a9f06b2c70a6e83de15a0e54804a28","src/main.rs":"fc867cb5f0b02d0f49ecab06b72c05a247cbcf3bf9228c235de8e787bda7bef5"},"package":"1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"}
\ No newline at end of file
+{"files":{"COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"2b5e42ae354311f29e53b600dffb398db134de1747c4ac96fd16fc16fbb9d4d1","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","README.md":"9fb3256ce6fc5b25c9a92fe3b8f7a82a26d380fcf6121c934c2bb6f85102fede","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","benches/bench.rs":"c74b297ed2217e4784614573a8b44c61dfe5173985c43616e43a3f608973ff2e","benches/random.txt":"9386fb3efedc7ffbd09fb49088347f1056bc2d90a861009fa2f804cdb714efcb","examples/dict-search.rs":"0dac88736039262dfb8df9ff85ece18de90dd4da9b8b895cf4d57bf33167b224","src/autiter.rs":"b3bd067bf6c25708109870afbb5d09e9a04d0f2f596f59c368e42ddbc7c65f93","src/full.rs":"acb6389d210e7bc4125f0ebb6f268b712e60ec50b58b9c4094a8083bb8f4caf2","src/lib.rs":"fdddbb688fbc71461242b94e1cfb3dfbf0a9f06b2c70a6e83de15a0e54804a28","src/main.rs":"fc867cb5f0b02d0f49ecab06b72c05a247cbcf3bf9228c235de8e787bda7bef5"},"package":"1e9a933f4e58658d7b12defcf96dc5c720f20832deebe3e0a19efd3b6aaeeb9e"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/aho-corasick/.cargo_vcs_info.json b/rustc_deps/vendor/aho-corasick/.cargo_vcs_info.json
deleted file mode 100644
index bc741be..0000000
--- a/rustc_deps/vendor/aho-corasick/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "6e17854c0f63acd101e0d985e6d2441ee24e9eff"
-  }
-}
diff --git a/rustc_deps/vendor/ansi_term/.cargo-checksum.json b/rustc_deps/vendor/ansi_term/.cargo-checksum.json
index 68043c6..c1b9d1b 100644
--- a/rustc_deps/vendor/ansi_term/.cargo-checksum.json
+++ b/rustc_deps/vendor/ansi_term/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"03d80927d30c71a0183fc0cd2a6b3bb40b2474d4f83b8d02e90d950457b7c590","Cargo.toml":"48df4570f3bbfba5b3c19731a54abf70ac8608e4dab6f4dae6a694b18d6ad102","LICENCE":"a24742368cf773bbb8b6f0fcbe86ca4b802c2b7c081bc8bebf14ac38618e7c63","README.md":"779b02ebacd6f4d08e01ef289bd7976a4467054f40355593817fd6df7e8c9dd4","examples/colours.rs":"e4870671adb9574607e37a0e4145643f9047c881c310113de114ec20d76aaf4b","src/ansi.rs":"b8f5de966e7ec2fba7a4d5a373d0aceafe19ea6e20a3f4daaf448e119c989ae7","src/debug.rs":"0ab28b65c39538825707d8b7e81c6f91c78310856c936bba0ee609e06d138543","src/difference.rs":"da68156310cbaf57a3619160d0fb966f496f970c32a2e57601127cc8f54a2fbf","src/display.rs":"a43f19b7cf4d95e90e4f3954399405d8350523d423f0beed9f01399e17527b17","src/lib.rs":"b6df00ab61ca0d82c9f7b3798d516384dd2617fe73e8981f37125ecccc970dd7","src/style.rs":"7c5c2524428f0dfbe3b8d5876ddb81c47d8635704ee31ef63ddeb2429a67f457","src/windows.rs":"3b52469eed89fdc258139e4fd978f0e30c72168863966247df781da8715f0841","src/write.rs":"247c518f8b0c103c970bbe7bc70caba3ee961ab0d37095e2da5c69db98d2fc24"},"package":"ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"}
\ No newline at end of file
+{"files":{"Cargo.toml":"48df4570f3bbfba5b3c19731a54abf70ac8608e4dab6f4dae6a694b18d6ad102","LICENCE":"a24742368cf773bbb8b6f0fcbe86ca4b802c2b7c081bc8bebf14ac38618e7c63","README.md":"779b02ebacd6f4d08e01ef289bd7976a4467054f40355593817fd6df7e8c9dd4","examples/colours.rs":"e4870671adb9574607e37a0e4145643f9047c881c310113de114ec20d76aaf4b","src/ansi.rs":"b8f5de966e7ec2fba7a4d5a373d0aceafe19ea6e20a3f4daaf448e119c989ae7","src/debug.rs":"0ab28b65c39538825707d8b7e81c6f91c78310856c936bba0ee609e06d138543","src/difference.rs":"da68156310cbaf57a3619160d0fb966f496f970c32a2e57601127cc8f54a2fbf","src/display.rs":"a43f19b7cf4d95e90e4f3954399405d8350523d423f0beed9f01399e17527b17","src/lib.rs":"b6df00ab61ca0d82c9f7b3798d516384dd2617fe73e8981f37125ecccc970dd7","src/style.rs":"7c5c2524428f0dfbe3b8d5876ddb81c47d8635704ee31ef63ddeb2429a67f457","src/windows.rs":"3b52469eed89fdc258139e4fd978f0e30c72168863966247df781da8715f0841","src/write.rs":"247c518f8b0c103c970bbe7bc70caba3ee961ab0d37095e2da5c69db98d2fc24"},"package":"ee49baf6cb617b853aa8d93bf420db2383fab46d314482ca2803b40d5fde979b"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/ansi_term/.travis.yml b/rustc_deps/vendor/ansi_term/.travis.yml
deleted file mode 100644
index 035af4b..0000000
--- a/rustc_deps/vendor/ansi_term/.travis.yml
+++ /dev/null
@@ -1,33 +0,0 @@
-language: rust

-

-addons:

-  apt:

-    packages:

-      - libcurl4-openssl-dev

-      - libelf-dev

-      - libdw-dev

-

-rust:

-  - nightly

-  - beta

-  - stable

-

-# load travis-cargo

-before_script:

-  - |

-      pip install 'travis-cargo<0.2' --user &&

-      export PATH=$HOME/.local/bin:$PATH

-

-script:

-  - |

-      travis-cargo build &&

-      travis-cargo test

-      travis-cargo --only stable doc

-after_success:

-  # measure code coverage and upload to coveralls.io

-  - travis-cargo coveralls --no-sudo

-

-env:

-  global:

-    # override the default `--features unstable` used for the nightly branch (optional)

-    - TRAVIS_CARGO_NIGHTLY_FEATURE=nightly
\ No newline at end of file
diff --git a/rustc_deps/vendor/arrayref/.cargo-checksum.json b/rustc_deps/vendor/arrayref/.cargo-checksum.json
index 90cf206..31fc317 100644
--- a/rustc_deps/vendor/arrayref/.cargo-checksum.json
+++ b/rustc_deps/vendor/arrayref/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"19382d5f7c535638c53c19821fdfc3d8e3b2acb521a20339ce710ac6155c3c4e","Cargo.toml":"69f44c00a5d11817c9c1f255d135332b0167c5b1ed498c09b1bcfae500db37b8","LICENSE":"1bc7e6f475b3ec99b7e2643411950ae2368c250dd4c5c325f80f9811362a94a1","README.md":"f77d8910fa16f9f0ad2d72d039a7e8ac2979834e0acf435b7c84744c90cb21ec","examples/array_refs.rs":"336b52f6ab31d78766bd1653cea60b9f183d80369f3feec55e454ccbcb3adaaa","examples/array_refs_with_const.rs":"9e49959de714c611bc2e48bb0dd51c3023abc2b3e6b6e0428e7d7b30be8900e4","examples/simple-case.rs":"12a7c596db0d8e89415dfd75a8fe390a7141b24771ad70aee73286857a37b5fb","src/lib.rs":"5e16b06cc5f532a557876002923a58881500beda02e2e35bd46f3a547e8549b0"},"package":"0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee"}
\ No newline at end of file
+{"files":{"Cargo.toml":"69f44c00a5d11817c9c1f255d135332b0167c5b1ed498c09b1bcfae500db37b8","LICENSE":"1bc7e6f475b3ec99b7e2643411950ae2368c250dd4c5c325f80f9811362a94a1","README.md":"f77d8910fa16f9f0ad2d72d039a7e8ac2979834e0acf435b7c84744c90cb21ec","examples/array_refs.rs":"336b52f6ab31d78766bd1653cea60b9f183d80369f3feec55e454ccbcb3adaaa","examples/array_refs_with_const.rs":"9e49959de714c611bc2e48bb0dd51c3023abc2b3e6b6e0428e7d7b30be8900e4","examples/simple-case.rs":"12a7c596db0d8e89415dfd75a8fe390a7141b24771ad70aee73286857a37b5fb","src/lib.rs":"5e16b06cc5f532a557876002923a58881500beda02e2e35bd46f3a547e8549b0"},"package":"0d382e583f07208808f6b1249e60848879ba3543f57c32277bf52d69c2f0f0ee"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/arrayref/.travis.yml b/rustc_deps/vendor/arrayref/.travis.yml
deleted file mode 100644
index c21aeda..0000000
--- a/rustc_deps/vendor/arrayref/.travis.yml
+++ /dev/null
@@ -1,31 +0,0 @@
-language: rust
-addons:
-  apt:
-    packages:
-    - libcurl4-openssl-dev
-    - libelf-dev
-    - libdw-dev
-rust:
-  - nightly
-  - beta
-  - stable
-matrix:
-  allow_failures:
-    - rust: nightly
-before_script:
-- |
-  pip install 'travis-cargo<0.2' --user &&
-  export PATH=$HOME/.local/bin:$PATH
-script:
-- |
-  travis-cargo build &&
-  travis-cargo test &&
-  travis-cargo bench &&
-  travis-cargo --only stable doc
-after_success:
-- travis-cargo --only stable doc-upload
-- travis-cargo coveralls --no-sudo
-env:
-  global:
-  - TRAVIS_CARGO_NIGHTLY_FEATURE=nightly
-  - secure: 8dzqJGkV5184c0sV9BiMjjs5lxQjK2CvfGAU6ab2YFWN3roN/u37wBkoyqeSIzR3Uv0EXUOIM/BwuaeIwDHrZtTQMNnRw8Aa9A0mIeVCz1zlOFRK18NVGKoxBkkzlAvQn51D9X7sF9g9xLoDB7zyH63qhrerz6vjUivXaXkKZKAUZeBZMQ5riUxaHkt2LJtQhngXPS3Ar+ajSjIGkhg9x8gkqgkQCewbyoR9S9BwiyIUdYyYRSTgUgFtp3tuzMhQ8qykj53PqrbcCfiYC3O3lsGfQ0nqerT7cxPIHIg25+dZYJjLFk1908+GZFVqia9JFT8bbep7IkICDtfRQswAcxKTV6TvExfkEh8/vapzCueXuFMbszUDXxFkE+QWEO9RcDCQZjVAXuKx/iacok4XFXr/yE3QKVB+up7bKcEpAMMxjPd2+Z3EHVKZ53DtlzuzxM6ByjPy+0hRHkLWq3ZyzxyF3PAHq1tWlJ8B37eOqJIk4n+OBBpPOg1WF6nFq/7UV44SRkBbfC69wk8ANb46gWlIiB4+VKAsxEkRMYURtsPqTpgGqSdB2aNm8xpzke9d3d7Z+Zy8ma6tykqN9TlY7ke5fxJhaeNdTpdUykc0MHcKF8RvZbi170UmMqLRQMsMusXGP6QnhpVQhQB/bTRNZWJwKCTZ54jtEKImShInhTk=
diff --git a/rustc_deps/vendor/ascii/.cargo-checksum.json b/rustc_deps/vendor/ascii/.cargo-checksum.json
index f11ed8d..1461518 100644
--- a/rustc_deps/vendor/ascii/.cargo-checksum.json
+++ b/rustc_deps/vendor/ascii/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"216d0dcc938b6b44a2eb631bf9feef62358143666ab169991ca70d5e591e00bb","Cargo.toml":"685220976b96f466319d5ef6e9cf28823f77931319ac5e9c185f67be097680a6","LICENSE-APACHE":"ef1ec3550c901b27cb9b155893aa9caea098fb85347779ba522cb891598fd93c","LICENSE-MIT":"7e4b8a17b118d3d7fd7a362a4b6563e0bd98b098a24c4c7f07dd22042091a847","README.md":"006ff1f56153a8af5240df4211a93fbf548cc5a54bc13a172bb47a0a6adeb4fb","RELEASES.md":"9785f6713670659392bb02826f73e8d980af379d69d3cc0f5d2e38e6eab81b0a","src/ascii_char.rs":"38aee96ed5537a94da5b553e6aeb83b6a678c046dd352365ae8adadc7f60dd1a","src/ascii_str.rs":"cbbfed15a6f6b1ab2490814e32ebdbf99b65f6dc7dcf14a9bf337b8ae155bc31","src/ascii_string.rs":"d80d02618651d395ed19b6764614a096bd4ba2850b0255cb368d9f39d25f818a","src/free_functions.rs":"57cf877e2c44eda6cd762e124da120cbb39745e77133bf7acdf65634df487b1f","src/lib.rs":"75afecb9dd00bc89d8a996924e673373615029a453e09c67265aabebabfe9793","tests.rs":"dd956983a1f7e1d3623e5b5d5300755c09fcfa8bb43f659f7e427d25c094c50f"},"package":"97be891acc47ca214468e09425d02cef3af2c94d0d82081cd02061f996802f14"}
\ No newline at end of file
+{"files":{"Cargo.toml":"685220976b96f466319d5ef6e9cf28823f77931319ac5e9c185f67be097680a6","LICENSE-APACHE":"ef1ec3550c901b27cb9b155893aa9caea098fb85347779ba522cb891598fd93c","LICENSE-MIT":"7e4b8a17b118d3d7fd7a362a4b6563e0bd98b098a24c4c7f07dd22042091a847","README.md":"006ff1f56153a8af5240df4211a93fbf548cc5a54bc13a172bb47a0a6adeb4fb","RELEASES.md":"9785f6713670659392bb02826f73e8d980af379d69d3cc0f5d2e38e6eab81b0a","src/ascii_char.rs":"38aee96ed5537a94da5b553e6aeb83b6a678c046dd352365ae8adadc7f60dd1a","src/ascii_str.rs":"cbbfed15a6f6b1ab2490814e32ebdbf99b65f6dc7dcf14a9bf337b8ae155bc31","src/ascii_string.rs":"d80d02618651d395ed19b6764614a096bd4ba2850b0255cb368d9f39d25f818a","src/free_functions.rs":"57cf877e2c44eda6cd762e124da120cbb39745e77133bf7acdf65634df487b1f","src/lib.rs":"75afecb9dd00bc89d8a996924e673373615029a453e09c67265aabebabfe9793","tests.rs":"dd956983a1f7e1d3623e5b5d5300755c09fcfa8bb43f659f7e427d25c094c50f"},"package":"97be891acc47ca214468e09425d02cef3af2c94d0d82081cd02061f996802f14"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/ascii/.travis.yml b/rustc_deps/vendor/ascii/.travis.yml
deleted file mode 100644
index b8ef2fd..0000000
--- a/rustc_deps/vendor/ascii/.travis.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-sudo: false
-language: rust
-
-rust:
-  - nightly
-  - beta
-  - stable
-  - 1.9.0
-
-before_script:
-  - |
-    pip install 'travis-cargo<0.2' --user &&
-    export PATH=$HOME/.local/bin:$PATH
-
-script:
-  - |
-    travis-cargo build &&
-    travis-cargo test &&
-    travis-cargo build -- --no-default-features &&
-    travis-cargo test -- --no-default-features
-
-after_success:
-  - |
-    if [ "$TRAVIS_RUST_VERSION" == "stable" ]; then
-        travis-cargo doc -- --no-default-features &&
-        mv target/doc target/doc_core &&
-        travis-cargo doc &&
-        mv target/doc_core target/doc/core &&
-        travis-cargo doc-upload
-    fi
-
-env:
-  global:
-    - TRAVIS_CARGO_NIGHTLY_FEATURE="" # no unstable feature
-    - secure: ddcWXicVcCooC+Dy8guGruZY2bAU3oyGjrxdC3YNfBYdatEKzW1toAiQyN8SRyZyfoHsbb7lh4YeBfv1rpmTPM6nvHMz9CHMlvED8Y+/QuYoKN2qrNiQ7eQ9xSVhOVlha/GMPSZXxmEIuJVj0Dn1D/S4RWyNMKCJdj2YvybPzOU=
diff --git a/rustc_deps/vendor/atom/.cargo-checksum.json b/rustc_deps/vendor/atom/.cargo-checksum.json
index f481dfc..805de5b 100644
--- a/rustc_deps/vendor/atom/.cargo-checksum.json
+++ b/rustc_deps/vendor/atom/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".load.png":"c5ef4c1f0884c760e551531ccf8b40e91116019faf9bfadf046ea8b119e79f65",".store.png":"638ad516ceeb7e565cfd24207ff5b701b331924773cd2cbb03064179630836e4",".swap.png":"cb6d762b36c2e521c0ee6ea028fcfe89da1fe1840c201c22cc952688898af737",".travis.yml":"5603284ca84547c407933f8e1589b2bd97cf67f8ebed2492c1ce8a7cd946dbf4","Cargo.toml":"e002ed3dd38dc0551a851c4266742ed6d51b7173556c370b57d1b156b59c7350","LICENSE":"09e8a9bcec8067104652c168685ab0931e7868f9c8284b66f5ae6edae5f1130b","examples/fifo.rs":"f6a1091ecc3061c8c51a5906a93abb2f43853f23fbe56b3b36430ab0bece2e10","examples/simple.rs":"5590003f2775307d0d00ef6bcd2c009a011f71850033fca4ed7d2105e9a88b1c","readme.md":"a91b178c0b0fab0af36854d760e354808c36bbeda1bf11e77a8e02a5e4ad1a9d","src/lib.rs":"7a682b15762ad81e2cbc87add0d7538bc9627ddee5eb60af4d34b7276df0b974","tests/atom.rs":"d94cdd5a1bb9626b21642a4b2345927991e822b2623f1971f053c48e99979db8"},"package":"3c86699c3f02778ec07158376991c8f783dd1f2f95c579ffaf0738dc984b2fe2"}
\ No newline at end of file
+{"files":{"Cargo.toml":"e002ed3dd38dc0551a851c4266742ed6d51b7173556c370b57d1b156b59c7350","LICENSE":"09e8a9bcec8067104652c168685ab0931e7868f9c8284b66f5ae6edae5f1130b","examples/fifo.rs":"f6a1091ecc3061c8c51a5906a93abb2f43853f23fbe56b3b36430ab0bece2e10","examples/simple.rs":"5590003f2775307d0d00ef6bcd2c009a011f71850033fca4ed7d2105e9a88b1c","readme.md":"a91b178c0b0fab0af36854d760e354808c36bbeda1bf11e77a8e02a5e4ad1a9d","src/lib.rs":"7a682b15762ad81e2cbc87add0d7538bc9627ddee5eb60af4d34b7276df0b974","tests/atom.rs":"d94cdd5a1bb9626b21642a4b2345927991e822b2623f1971f053c48e99979db8"},"package":"3c86699c3f02778ec07158376991c8f783dd1f2f95c579ffaf0738dc984b2fe2"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/atom/.load.png b/rustc_deps/vendor/atom/.load.png
deleted file mode 100644
index 3327e64..0000000
--- a/rustc_deps/vendor/atom/.load.png
+++ /dev/null
Binary files differ
diff --git a/rustc_deps/vendor/atom/.store.png b/rustc_deps/vendor/atom/.store.png
deleted file mode 100644
index b103d08..0000000
--- a/rustc_deps/vendor/atom/.store.png
+++ /dev/null
Binary files differ
diff --git a/rustc_deps/vendor/atom/.swap.png b/rustc_deps/vendor/atom/.swap.png
deleted file mode 100644
index 82e724f..0000000
--- a/rustc_deps/vendor/atom/.swap.png
+++ /dev/null
Binary files differ
diff --git a/rustc_deps/vendor/atom/.travis.yml b/rustc_deps/vendor/atom/.travis.yml
deleted file mode 100644
index 6d04304..0000000
--- a/rustc_deps/vendor/atom/.travis.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-language: rust
-
-env:
-  global:
-    - secure: l8hKyZzEGNBE/j44xOFJS04MRM1icLvBMT5QK6sujJ+wN9X/jE4pBDLuL3ByajnQyspJOgqvNvYkMchQGKW7Aqan+VorKGk/CFf7+ly3Dpeitq/tNTZdu454kKGvMWfU7a2ETVHg19uN5Lo9p40tWiTTYJ+0lt8tK+AEkAriLbs=
-
-script:
-  - cargo build
-  - cargo test
-  - cargo doc
-
-after_script:
-  - mv target/doc doc
-  - curl http://www.rust-ci.org/artifacts/put?t=$RUSTCI_TOKEN | sh
-
-
-
diff --git a/rustc_deps/vendor/atty/.cargo-checksum.json b/rustc_deps/vendor/atty/.cargo-checksum.json
index a871dc8..b440335 100644
--- a/rustc_deps/vendor/atty/.cargo-checksum.json
+++ b/rustc_deps/vendor/atty/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"9002419ea748e146ea85fd5c2646aaa6649168d4baf2e23de834c7e13e5742d3","CHANGELOG.md":"7bd35273865921a87f96ea8d69bd98bde11a96001b74c79cdcdbc83bfbbee53c","Cargo.toml":"77b51a9746012bf939c0fd0a72daa9db816c26798c557c234213a2d38b8aae81","LICENSE":"f3f8d32084848316048c5a1e125a3c5003eb32145a5f5f2a0d5586377324f9ba","README.md":"a62d294c45c9d8b2e54fcf35d9ee1ba8b8e2ab6960fb3d3f4cc9d59e8aed0835","appveyor.yml":"dea9c8da309cbb02bce31c613b697256f4cfada20b2f7b0c8911b73d569daf58","examples/atty.rs":"1551387a71474d9ac1b5153231f884e9e05213badcfaa3494ad2cb7ea958374a","rustfmt.toml":"bd196700242d17913cf8adead6912f55e9347e52ab5a001729d6c18d169f05c4","src/lib.rs":"ec3428266e83b35a8714ab99d9962c9e29f78becb39e313846f042f5b176c723"},"package":"9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"7bd35273865921a87f96ea8d69bd98bde11a96001b74c79cdcdbc83bfbbee53c","Cargo.toml":"77b51a9746012bf939c0fd0a72daa9db816c26798c557c234213a2d38b8aae81","LICENSE":"f3f8d32084848316048c5a1e125a3c5003eb32145a5f5f2a0d5586377324f9ba","README.md":"a62d294c45c9d8b2e54fcf35d9ee1ba8b8e2ab6960fb3d3f4cc9d59e8aed0835","appveyor.yml":"dea9c8da309cbb02bce31c613b697256f4cfada20b2f7b0c8911b73d569daf58","examples/atty.rs":"1551387a71474d9ac1b5153231f884e9e05213badcfaa3494ad2cb7ea958374a","rustfmt.toml":"bd196700242d17913cf8adead6912f55e9347e52ab5a001729d6c18d169f05c4","src/lib.rs":"ec3428266e83b35a8714ab99d9962c9e29f78becb39e313846f042f5b176c723"},"package":"9a7d5b8723950951411ee34d271d99dddcc2035a16ab25310ea2c8cfd4369652"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/atty/.travis.yml b/rustc_deps/vendor/atty/.travis.yml
deleted file mode 100644
index a628724..0000000
--- a/rustc_deps/vendor/atty/.travis.yml
+++ /dev/null
@@ -1,73 +0,0 @@
-sudo: false
-language: rust
-matrix:
-  fast_finish: true
-  include:
-    - rust: nightly
-    - rust: nightly
-      os: osx
-    - rust: beta
-    - rust: beta
-      os: osx
-    - rust: stable
-    - rust: stable
-      os: osx
-  allow_failures:
-    - rust: nightly
-
-before_cache:
-  # Travis can't cache files that are not readable by "others"
-  - chmod -R a+r $HOME/.cargo
-
-before_install:
-  # install kcov
-  - >
-    if [ ! -d "$HOME/.kcov/bin" ]; then
-      wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz &&
-      tar xzf master.tar.gz && mkdir kcov-master/build && cd kcov-master/build &&
-      cmake -DCMAKE_INSTALL_PREFIX:PATH=$HOME/.kcov .. && make && make install && cd ../..
-    fi
-  - export PATH=$HOME/.kcov/bin:$PATH
-
-script:
-  - cargo build
-
-cache:
-  cargo: true
-  apt: true
-  directories:
-  - target/debug/deps
-  - target/debug/build
-
-addons:
-  apt:
-    packages:
-      - libcurl4-openssl-dev
-      - libelf-dev
-      - libdw-dev
-      - binutils-dev
-      - libiberty-dev
-
-after_success:
-  - '[ $TRAVIS_RUST_VERSION = stable ] &&
-    [ $TRAVIS_BRANCH = master ] &&
-    [ $TRAVIS_PULL_REQUEST = false ] &&
-    (ls target/debug &&
-    RUSTFLAGS="-C link-dead-code" cargo test --no-run &&
-    for file in target/debug/atty-*; do
-       if [[ "${file: -2}" != ".d" ]]; then
-         mkdir -p "target/cov/$(basename $file)";
-         kcov --exclude-pattern=/.cargo,/usr/lib --verify "target/cov/$(basename $file)" "$file";
-       fi;
-    done &&
-    kcov --coveralls-id=$COVERALLS_REPO_TOKEN --merge target/cov target/cov/* &&
-    echo "covered") || true'
-  - '[ $TRAVIS_RUST_VERSION = stable ] &&
-    [ $TRAVIS_BRANCH = master ] &&
-    [ $TRAVIS_PULL_REQUEST = false ]
-    && cargo doc --no-deps &&
-    echo "<meta http-equiv=refresh content=0;url=`echo $TRAVIS_REPO_SLUG | cut -d / -f 2`/index.html>" > target/doc/index.html &&
-    pip install --user ghp-import &&
-    /home/travis/.local/bin/ghp-import -n target/doc &&
-    git push -fq https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages &&
-    echo "documented"'
\ No newline at end of file
diff --git a/rustc_deps/vendor/backtrace/.cargo-checksum.json b/rustc_deps/vendor/backtrace/.cargo-checksum.json
index 06a07d6..aa671f0 100644
--- a/rustc_deps/vendor/backtrace/.cargo-checksum.json
+++ b/rustc_deps/vendor/backtrace/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".gitmodules":"4d659086ee4fa6cff644c23a4c86410dcf672bbd3b0f55127b0be7b80f32aa87",".travis.yml":"78ec96336927928ba6b4214ff75ae6e2743485aabb48127add1c7f2bb98573ab","Cargo.toml":"8f2c15cc33e55c532bef00c06823eb9d06676b0e674f330cf78c6bbdf957ab21","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"914767b814ee5c5d794468902d1863649a8cfec36072df81884d396580e9748a","appveyor.yml":"568f76b9e68b862e3a21c64ce34894ff5e753c6019f45de27df0335809420030","ci/android-ndk.sh":"89fafa41d08ff477f949bfc163d04d1eb34fdee370f7a695cfba4ef34c164a55","ci/docker/aarch64-linux-android/Dockerfile":"c97f23fe2892f406d3deb7479c89e1c1dbbdbd0db456ac699f9399852300348d","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"97fa8f20c6899ee36b47371d485b64a2e96b626a2746b5f434c01eae9168b2a1","ci/docker/arm-linux-androideabi/Dockerfile":"11f6963365de062cf0ac81debec00aee29932df2714d8505f9f6383722d211a8","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"41133d712ef13f05e67796857db86476b3ed9c6355d5eb56115575b06d739e04","ci/docker/armv7-linux-androideabi/Dockerfile":"39038d17a423683e0af27a050b34dea610729fb0085814ec6c81726a7f52556f","ci/docker/armv7-unknown-linux-gnueabihf/Dockerfile":"2a216244baad705491f249278083994bf68744a2759f51e768b2f92e0da7c360","ci/docker/i586-unknown-linux-gnu/Dockerfile":"ef898c914590d721488ca11e62f3d7c26852346e1612deb0f3e12ab011187109","ci/docker/i686-linux-android/Dockerfile":"9181e5fe5503077652659bc3353c3c21fcf4fc6b03730430fb40d6adc3096079","ci/docker/i686-unknown-linux-gnu/Dockerfile":"ef898c914590d721488ca11e62f3d7c26852346e1612deb0f3e12ab011187109","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"83e0e3adbb2d6f2398e70d2c8f71ee301fe99e24554f902602c2f2bb067c2f2c","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"828b657e1748bcd8d331794624d5fc1cd07087a051e507eb9206757985194bf1","ci/docker/x86_64-linux-android/Dockerfile":"074bb2906ba587466490ab9d802eb817b9f23eb54aa095ee53e1a33be5569328","ci/docker/x86_64-pc-windows-gnu/Dockerfile":"0822e270108ec39a6b93721598156031a0469ed680e62ce4acd13bbb1a952b9d","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"e1c202a6831b17e017b4737e80d5b992905895b086bbc06285fc9c337cadbc23","ci/docker/x86_64-unknown-linux-musl/Dockerfile":"2efbba08cc8fff8d2431dde92517df7d122dc754c778820c668f1ac29a885290","ci/run-docker.sh":"517db62fa790712734a1410b27995134ec88c613a0cae548382fb0d3f0b55080","ci/run.sh":"30a3807c195cd86d8b8884e1228cd061aa112b26c54277beebf5108777a36fe9","examples/backtrace.rs":"fd6e1cc6c3378ec7d41cd03b2bef187051298dceb01147e71f207dbb8a0c4867","examples/raw.rs":"f07be26d1f97cd7ac79290ac99d19c4eec5d27031fe270ab5364c25d9c2ad9e0","src/backtrace/dbghelp.rs":"d052fa4bcb4f3c012e0066d01c18d89a9c0003a6e022ebdca5a03bf09ab7a973","src/backtrace/libunwind.rs":"cc9cdc1d389571cdedf43dfc2d39b8c3af85531a3965ed700c724f436afb213e","src/backtrace/mod.rs":"91a544bd9e89da6b580e2580ab15ead354f13243bca50516ff5cefe68a8cd199","src/backtrace/noop.rs":"dc4a6602e9852b945c382194402314d3d68c8ca90199af9a8159419fb91a3c99","src/backtrace/unix_backtrace.rs":"31204989a8852428792a1c99d36717559aad14d93526e8a37744214adf188268","src/capture.rs":"a6f379300f6a578c52fce5927461fb0d084b2eb080113561a2e0cc11aa1f5c73","src/dylib.rs":"09f3d7f32849cf0daa4de9df48f8e4a4d5ba62e20723c79578201bd271dc4777","src/lib.rs":"e0176033b10579b02228f8860a4beb684fa4c246dc6225425ebe8897c662b589","src/symbolize/coresymbolication.rs":"95c7dab3e65dd7217de5dd22cd550192c1505dfada56040197675ea3b9b380f1","src/symbolize/dbghelp.rs":"6bf7c3cc9542e4084aca417b67af25da0d0caa7df83787e92046f5918d32e9d8","src/symbolize/dladdr.rs":"8287cbca440a9e92e74d88c5a7b920f6b4cf6d8f50bc8b0f61aca5ba42d5b5ec","src/symbolize/gimli.rs":"c385d4ac9a2c87c1eddf5a999bb17d46ff400026766e8c8b1fef7afc747a19e5","src/symbolize/libbacktrace.rs":"0cdad7de2501baef9da193ee6aab21c453d26348a2071c805a133efe1209eaa1","src/symbolize/mod.rs":"2fcf4a6c8319d886e03f7a45fbb25d7e35c4c6021ae3d49d243ce901f213e5c9","src/symbolize/noop.rs":"b622fcecb4e22b42c3d3e2ef5dc5a6ab14601fec83c7797ee1fbbacc12fe6ca1","tests/long_fn_name.rs":"a59eebef3e9403a566b2cdcb7c76e3237675883fa018baca6fe55801f5d11b80","tests/smoke.rs":"f3c03fc5d31281f6a08232814a7b1ca74f514014f0f8098cb014d6e7d7eb6541"},"package":"89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a"}
\ No newline at end of file
+{"files":{"Cargo.toml":"8f2c15cc33e55c532bef00c06823eb9d06676b0e674f330cf78c6bbdf957ab21","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"914767b814ee5c5d794468902d1863649a8cfec36072df81884d396580e9748a","appveyor.yml":"568f76b9e68b862e3a21c64ce34894ff5e753c6019f45de27df0335809420030","ci/android-ndk.sh":"89fafa41d08ff477f949bfc163d04d1eb34fdee370f7a695cfba4ef34c164a55","ci/docker/aarch64-linux-android/Dockerfile":"c97f23fe2892f406d3deb7479c89e1c1dbbdbd0db456ac699f9399852300348d","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"97fa8f20c6899ee36b47371d485b64a2e96b626a2746b5f434c01eae9168b2a1","ci/docker/arm-linux-androideabi/Dockerfile":"11f6963365de062cf0ac81debec00aee29932df2714d8505f9f6383722d211a8","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"41133d712ef13f05e67796857db86476b3ed9c6355d5eb56115575b06d739e04","ci/docker/armv7-linux-androideabi/Dockerfile":"39038d17a423683e0af27a050b34dea610729fb0085814ec6c81726a7f52556f","ci/docker/armv7-unknown-linux-gnueabihf/Dockerfile":"2a216244baad705491f249278083994bf68744a2759f51e768b2f92e0da7c360","ci/docker/i586-unknown-linux-gnu/Dockerfile":"ef898c914590d721488ca11e62f3d7c26852346e1612deb0f3e12ab011187109","ci/docker/i686-linux-android/Dockerfile":"9181e5fe5503077652659bc3353c3c21fcf4fc6b03730430fb40d6adc3096079","ci/docker/i686-unknown-linux-gnu/Dockerfile":"ef898c914590d721488ca11e62f3d7c26852346e1612deb0f3e12ab011187109","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"83e0e3adbb2d6f2398e70d2c8f71ee301fe99e24554f902602c2f2bb067c2f2c","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"828b657e1748bcd8d331794624d5fc1cd07087a051e507eb9206757985194bf1","ci/docker/x86_64-linux-android/Dockerfile":"074bb2906ba587466490ab9d802eb817b9f23eb54aa095ee53e1a33be5569328","ci/docker/x86_64-pc-windows-gnu/Dockerfile":"0822e270108ec39a6b93721598156031a0469ed680e62ce4acd13bbb1a952b9d","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"e1c202a6831b17e017b4737e80d5b992905895b086bbc06285fc9c337cadbc23","ci/docker/x86_64-unknown-linux-musl/Dockerfile":"2efbba08cc8fff8d2431dde92517df7d122dc754c778820c668f1ac29a885290","ci/run-docker.sh":"517db62fa790712734a1410b27995134ec88c613a0cae548382fb0d3f0b55080","ci/run.sh":"30a3807c195cd86d8b8884e1228cd061aa112b26c54277beebf5108777a36fe9","examples/backtrace.rs":"fd6e1cc6c3378ec7d41cd03b2bef187051298dceb01147e71f207dbb8a0c4867","examples/raw.rs":"f07be26d1f97cd7ac79290ac99d19c4eec5d27031fe270ab5364c25d9c2ad9e0","src/backtrace/dbghelp.rs":"d052fa4bcb4f3c012e0066d01c18d89a9c0003a6e022ebdca5a03bf09ab7a973","src/backtrace/libunwind.rs":"cc9cdc1d389571cdedf43dfc2d39b8c3af85531a3965ed700c724f436afb213e","src/backtrace/mod.rs":"91a544bd9e89da6b580e2580ab15ead354f13243bca50516ff5cefe68a8cd199","src/backtrace/noop.rs":"dc4a6602e9852b945c382194402314d3d68c8ca90199af9a8159419fb91a3c99","src/backtrace/unix_backtrace.rs":"31204989a8852428792a1c99d36717559aad14d93526e8a37744214adf188268","src/capture.rs":"a6f379300f6a578c52fce5927461fb0d084b2eb080113561a2e0cc11aa1f5c73","src/dylib.rs":"09f3d7f32849cf0daa4de9df48f8e4a4d5ba62e20723c79578201bd271dc4777","src/lib.rs":"e0176033b10579b02228f8860a4beb684fa4c246dc6225425ebe8897c662b589","src/symbolize/coresymbolication.rs":"95c7dab3e65dd7217de5dd22cd550192c1505dfada56040197675ea3b9b380f1","src/symbolize/dbghelp.rs":"6bf7c3cc9542e4084aca417b67af25da0d0caa7df83787e92046f5918d32e9d8","src/symbolize/dladdr.rs":"8287cbca440a9e92e74d88c5a7b920f6b4cf6d8f50bc8b0f61aca5ba42d5b5ec","src/symbolize/gimli.rs":"c385d4ac9a2c87c1eddf5a999bb17d46ff400026766e8c8b1fef7afc747a19e5","src/symbolize/libbacktrace.rs":"0cdad7de2501baef9da193ee6aab21c453d26348a2071c805a133efe1209eaa1","src/symbolize/mod.rs":"2fcf4a6c8319d886e03f7a45fbb25d7e35c4c6021ae3d49d243ce901f213e5c9","src/symbolize/noop.rs":"b622fcecb4e22b42c3d3e2ef5dc5a6ab14601fec83c7797ee1fbbacc12fe6ca1","tests/long_fn_name.rs":"a59eebef3e9403a566b2cdcb7c76e3237675883fa018baca6fe55801f5d11b80","tests/smoke.rs":"f3c03fc5d31281f6a08232814a7b1ca74f514014f0f8098cb014d6e7d7eb6541"},"package":"89a47830402e9981c5c41223151efcced65a0510c13097c769cede7efb34782a"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/backtrace/.gitmodules b/rustc_deps/vendor/backtrace/.gitmodules
deleted file mode 100644
index 8fc4eff..0000000
--- a/rustc_deps/vendor/backtrace/.gitmodules
+++ /dev/null
@@ -1,3 +0,0 @@
-[submodule "backtrace-sys/src/libbacktrace"]
-	path = backtrace-sys/src/libbacktrace
-	url = https://github.com/rust-lang-nursery/libbacktrace
diff --git a/rustc_deps/vendor/backtrace/.travis.yml b/rustc_deps/vendor/backtrace/.travis.yml
deleted file mode 100644
index 9366690..0000000
--- a/rustc_deps/vendor/backtrace/.travis.yml
+++ /dev/null
@@ -1,109 +0,0 @@
-language: rust
-sudo: false
-dist: trusty
-
-matrix:
-  fast_finish: true
-  include:
-    # Test everything on stable linux
-    - rust: stable
-      addons:
-        sources:
-          # Provides clang-3.9
-          - llvm-toolchain-trusty-3.9
-        apt:
-          packages:
-            # Required for `bindgen`, which is required by `findshlibs`, which is
-            # required by the `gimli` feature.
-            - clang-3.9
-      script: &test_all
-        - cargo build --manifest-path backtrace-sys/Cargo.toml
-        - cargo build
-        - cargo test
-        - cargo test --no-default-features
-        - cargo test --no-default-features --features 'libunwind'
-        - cargo test --no-default-features --features 'libunwind dladdr'
-        - cargo test --no-default-features --features 'libunwind libbacktrace'
-        - cargo test --no-default-features --features 'unix-backtrace'
-        - cargo test --no-default-features --features 'unix-backtrace dladdr'
-        - cargo test --no-default-features --features 'unix-backtrace libbacktrace'
-        - cargo test --no-default-features --features 'serialize-serde'
-        - cargo test --no-default-features --features 'serialize-rustc'
-        - cargo test --no-default-features --features 'serialize-rustc serialize-serde'
-        - cargo test --no-default-features --features 'cpp_demangle'
-        - cargo test --no-default-features --features 'gimli-symbolize'
-        - cd ./cpp_smoke_test && cargo test && cd ..
-        - cargo clean && cargo build
-
-    # Test everything on OSX as well as beta/nightly
-    - os: osx
-      script: *test_all
-    - rust: beta
-      script: *test_all
-    - rust: nightly
-      script: *test_all
-
-    # Upload docs on nightly
-    - rust: nightly
-      script:
-        - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-        - cargo doc --no-deps --all-features
-      after_success:
-        - travis-cargo doc-upload
-
-    # Cross-compile tests, not as comprehensive as above but gets us breadth of
-    # targets
-    - env: TARGET=aarch64-unknown-linux-gnu
-    - env: TARGET=arm-unknown-linux-gnueabihf
-    - env: TARGET=armv7-unknown-linux-gnueabihf
-    - env: TARGET=i586-unknown-linux-gnu
-    - env: TARGET=i686-unknown-linux-gnu
-    - env: TARGET=powerpc64-unknown-linux-gnu
-    - env: TARGET=powerpc-unknown-linux-gnu
-    - env: TARGET=x86_64-pc-windows-gnu
-    - env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-    - env: TARGET=x86_64-unknown-linux-musl
-
-    # Cross compile Android targets from linux
-    - env: TARGET=arm-linux-androideabi
-    - env: TARGET=armv7-linux-androideabi
-    - env: TARGET=aarch64-linux-android
-    - env: TARGET=i686-linux-android
-    - env: TARGET=x86_64-linux-android
-
-    # Build iOS targets from OSX
-    - env: TARGET=aarch64-apple-ios SDK=iphoneos
-      os: osx
-      script: &ios-build
-        - rustup target add $TARGET
-        - export SDK_PATH=`xcrun --show-sdk-path --sdk $SDK`
-        - export RUSTFLAGS="-C link-arg=-isysroot -C link-arg=$SDK_PATH"
-        - cargo test --no-run --target $TARGET
-    - env: TARGET=armv7-apple-ios SDK=iphoneos
-      os: osx
-      script: *ios-build
-    - env: TARGET=armv7s-apple-ios SDK=iphoneos
-      os: osx
-      script: *ios-build
-    - env: TARGET=i386-apple-ios SDK=iphonesimulator
-      os: osx
-      script: *ios-build
-    - env: TARGET=x86_64-apple-ios SDK=iphonesimulator
-      os: osx
-      script: *ios-build
-
-# docker cross-compilation targets
-script:
-  - if [ "$NO_ADD" == "" ]; then rustup target add $TARGET; fi
-  - cargo generate-lockfile
-  - ci/run-docker.sh $TARGET
-
-notifications:
-  email:
-    on_success: never
-
-env:
-  global:
-    # serde-codegen has historically needed a large stack to expand
-    - RUST_MIN_STACK=16777216
-    - secure: "Kuf3j6gC3MhR+F7g8/5J4+3tu+FXJP/SqKjsUVVjs/qjniIVX3MwZPhtP/pVtdRvYjW0NzLw5Nufb4o1cyY4uKwR8BHHNuEUE/h3mPShjWHqzLyn5QiBumPozsFCa32H4gconRmp3+s0YrBT7nLoGvUZZS0dkldMkpvvrPL/yUKXLS8HEP4L1GO5iMQQYG6i3sbWTbHikE6ZQogW/iZommyqUkVB/s/SQvdH9SXu89ttNXlm/F+EIsgsgyzpbULp5sD34GRDPJe+H1m+sgA1kTRrzmuBGNmz9mx6GyIKaqACTm1gRcb06nFjTPVTQioJBNnoV7TEqZCvjuSsUjcGmP4Aeissafo93ADzV+bd0uoWIScE9ltSVS+RgCDV+sd0GHz5U6FjhgZp0amaVl3d6hPp8lbTfK/gfj1i9ktQfKZbG7rB4tfIU1KeQRkyE9vb/TaKp8nwBbc4SVQ4EKFOlRbE1S1FooaKZweW8w57d2u+sMMMVJbO28/Ap8tk9xDSOl4shPaT0iM0U9/heF8FmCZB1OKXLKn6TAaNFnaMTvdTHl+Tjrf6Vzd/oPXJ7GuaB6eLxXYjXvZHuKiLkSZriOzhL7PbijNILbSgZt7+Fa0vcnXP8zgD4dmupx/CoIHLN9NP4o9cGXuBcaJ/iFryJ4i5LKGFNEUHtXkavDrcgcA="
diff --git a/rustc_deps/vendor/bit-vec/.cargo-checksum.json b/rustc_deps/vendor/bit-vec/.cargo-checksum.json
index 26d29e2..cdc7cc2 100644
--- a/rustc_deps/vendor/bit-vec/.cargo-checksum.json
+++ b/rustc_deps/vendor/bit-vec/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"26dbdd3f33aeefa6216804c025626b8e2bef5c05103410faa5e6e93f20331cbe","Cargo.toml":"0c1d447fdcff050a2c1f9e3267bdf5b2d3373e080603a5f9127167f31a169b7d","LICENSE-APACHE":"8173d5c29b4f956d532781d2b86e4e30f83e6b7878dce18c919451d6ba707c90","LICENSE-MIT":"7b63ecd5f1902af1b63729947373683c32745c16a10e8e6292e2e2dcd7e90ae0","README.md":"c9d3313c3cc0d55496d8c17bf950b96accd751fc67342e3b3dd3ce7756605092","benches/extern.rs":"30152d15cc55493d06396baf9eebb90c8f32b314f0dc77398ac8a121bd5ff917","crusader.sh":"e656dcb62d5122a64d55f837992e63cfd3beee37cf74c5ab6ff178a3c7ef943e","deploy-docs.sh":"7b66111b124c1c7e59cb84cf110d98b5cb783bd35a676e970d9b3035e55f7dfd","src/bench.rs":"a24345464fdbc70b5b877d13fa1b9da809ba4917e592d5de69f01b8b1340e8bb","src/lib.rs":"5162fc2658cce4d388453e73740eb1d74fbb64b0a5d714c8e7bc9a29671bbfa5"},"package":"4440d5cb623bb7390ae27fec0bb6c61111969860f8e3ae198bfa0663645e67cf"}
\ No newline at end of file
+{"files":{"Cargo.toml":"0c1d447fdcff050a2c1f9e3267bdf5b2d3373e080603a5f9127167f31a169b7d","LICENSE-APACHE":"8173d5c29b4f956d532781d2b86e4e30f83e6b7878dce18c919451d6ba707c90","LICENSE-MIT":"7b63ecd5f1902af1b63729947373683c32745c16a10e8e6292e2e2dcd7e90ae0","README.md":"c9d3313c3cc0d55496d8c17bf950b96accd751fc67342e3b3dd3ce7756605092","benches/extern.rs":"30152d15cc55493d06396baf9eebb90c8f32b314f0dc77398ac8a121bd5ff917","crusader.sh":"e656dcb62d5122a64d55f837992e63cfd3beee37cf74c5ab6ff178a3c7ef943e","deploy-docs.sh":"7b66111b124c1c7e59cb84cf110d98b5cb783bd35a676e970d9b3035e55f7dfd","src/bench.rs":"a24345464fdbc70b5b877d13fa1b9da809ba4917e592d5de69f01b8b1340e8bb","src/lib.rs":"5162fc2658cce4d388453e73740eb1d74fbb64b0a5d714c8e7bc9a29671bbfa5"},"package":"4440d5cb623bb7390ae27fec0bb6c61111969860f8e3ae198bfa0663645e67cf"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/bit-vec/.travis.yml b/rustc_deps/vendor/bit-vec/.travis.yml
deleted file mode 100644
index a7adcf1..0000000
--- a/rustc_deps/vendor/bit-vec/.travis.yml
+++ /dev/null
@@ -1,19 +0,0 @@
-language: rust
-sudo: false
-matrix:
-  include:
-    - rust: stable
-    - rust: nightly
-      env: FEATURES="--features nightly"
-script:
-    - cargo build $FEATURES
-    - cargo test $FEATURES
-    - cargo doc --no-deps
-    - bash crusader.sh
-after_success: |
-    [ "$TRAVIS_RUST_VERSION" = nightly ] &&
-    [ "$TRAVIS_BRANCH" = master ] &&
-    [ "$TRAVIS_PULL_REQUEST" = false ] &&
-    bash deploy-docs.sh
-notifications:
-    webhooks: http://huon.me:54857/travis
diff --git a/rustc_deps/vendor/bitfield/.cargo-checksum.json b/rustc_deps/vendor/bitfield/.cargo-checksum.json
index 2c7d40a..4344fba 100644
--- a/rustc_deps/vendor/bitfield/.cargo-checksum.json
+++ b/rustc_deps/vendor/bitfield/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"c67a3bb1152faf722d1b48298f972a54430350edcf0168530e471af38d561706","Cargo.toml":"4fe5a7b79c0c966c3d187cd2fc91a71eddc2a775a4a16bad2188cfe0eb67e83d","LICENSE-APACHE":"c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08","LICENSE-MIT":"af6b8d2c7ab89b819e3c2db77b572f145d14c8578dbd25015d739b30d4cc92f7","README.md":"0508f6529346eb36ac57497cc72c68e8e64e4f2aac7df2e9395582edfeead850","examples/bits_position.rs":"03f45aa8b81556d1cf9bcff848d90a64bf7b5eb8b3210c6cebacba4336ca8061","examples/ipv4.rs":"a92619bf35c589d5917e2e189ae22e3aa42d0e969f01941757d1847feea3371f","multitest.toml":"3b11babd5018e8ca62050d5a4a993e9fb7b7ebe4f3e176d0d9633c6e69f3dec2","src/lib.rs":"5eab8f7f1084ae1569a741f0f51083db20ae8c254e75697b63acc2ab4a0d02b7","tests/lib.rs":"321178a87218cfb60bbf45d21107a5b211cb56c5c8458c6a6eee7c3e89ea22b7"},"package":"0cdfb9275e899a694a3de63ef97a727c38f0be15765468c23f6e29e4bb461a46"}
\ No newline at end of file
+{"files":{"Cargo.toml":"9e8654d78c948b7370602b0dc2b319c8bd249463accf33fd9750a3a377494bda","LICENSE-APACHE":"c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08","LICENSE-MIT":"af6b8d2c7ab89b819e3c2db77b572f145d14c8578dbd25015d739b30d4cc92f7","README.md":"0508f6529346eb36ac57497cc72c68e8e64e4f2aac7df2e9395582edfeead850","examples/bits_position.rs":"03f45aa8b81556d1cf9bcff848d90a64bf7b5eb8b3210c6cebacba4336ca8061","examples/ipv4.rs":"a92619bf35c589d5917e2e189ae22e3aa42d0e969f01941757d1847feea3371f","multitest.toml":"0ad084611444cc582d5421dfac4ef9e9893fd76a4a87d7132e80668f8531eafa","src/lib.rs":"5c1faa27d718f609ed7fb6f1c23e0c1770564ff577ff8dd2da51a38e9a82cdd9","tests/lib.rs":"c2e8d68d840a7590adeda0bcca4d9ee064f9224441f65d8168e267ae22a8d8dd"},"package":"a260ed6b9f3ca16a4389390b1b1cd15a3bc0a9d3e63b1ef39f4978cec58a4e83"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/bitfield/.travis.yml b/rustc_deps/vendor/bitfield/.travis.yml
deleted file mode 100644
index 79b8041..0000000
--- a/rustc_deps/vendor/bitfield/.travis.yml
+++ /dev/null
@@ -1,6 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-  - 1.19.0
diff --git a/rustc_deps/vendor/bitfield/Cargo.toml b/rustc_deps/vendor/bitfield/Cargo.toml
index 8064dda..144af13 100644
--- a/rustc_deps/vendor/bitfield/Cargo.toml
+++ b/rustc_deps/vendor/bitfield/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "bitfield"
-version = "0.13.0"
+version = "0.13.1"
 authors = ["Loïc Damien <loic.damien@dzamlo.ch>"]
 description = "This crate provides macros to generate bitfield-like struct."
 documentation = "https://docs.rs/bitfield"
diff --git a/rustc_deps/vendor/bitfield/multitest.toml b/rustc_deps/vendor/bitfield/multitest.toml
index 8f08d29..bb62f25 100644
--- a/rustc_deps/vendor/bitfield/multitest.toml
+++ b/rustc_deps/vendor/bitfield/multitest.toml
@@ -7,7 +7,7 @@
 value = "target/{{name}}"
 
 [tests.variables]
-toolchain = ["stable", "beta", "nightly", "1.19.0"]
+toolchain = ["stable", "beta", "nightly", "1.26.0"]
 
 [[tests]]
 name = "cargo-clippy"
@@ -19,4 +19,4 @@
 
 [[tests]]
 name = "cargo-fmt"
-command = ["cargo", "fmt", "--all", "--", "--write-mode=diff"]
+command = ["cargo", "fmt", "--all", "--", "--check"]
diff --git a/rustc_deps/vendor/bitfield/src/lib.rs b/rustc_deps/vendor/bitfield/src/lib.rs
index b644604..a470460 100644
--- a/rustc_deps/vendor/bitfield/src/lib.rs
+++ b/rustc_deps/vendor/bitfield/src/lib.rs
@@ -1,5 +1,10 @@
 #![no_std]
-#![deny(missing_docs, unused_extern_crates, unused_import_braces, unused_qualifications)]
+#![deny(
+    missing_docs,
+    unused_extern_crates,
+    unused_import_braces,
+    unused_qualifications
+)]
 
 //!  This crate provides macros to generate bitfield-like struct.
 //!
@@ -69,7 +74,7 @@
 /// }
 /// # }
 /// ```
-#[macro_export]
+#[macro_export(local_inner_macros)]
 macro_rules! bitfield_fields {
     (@field $(#[$attribute:meta])* ($($vis:tt)*) $t:ty, $into:ty, _, $setter:ident: $msb:expr,
      $lsb:expr, $count:expr) => {
@@ -78,7 +83,7 @@
         #[allow(eq_op)]
         $($vis)* fn $setter(&mut self, index: usize, value: $t) {
             use $crate::BitRange;
-            debug_assert!(index < $count);
+            __bitfield_debug_assert!(index < $count);
             let width = $msb - $lsb + 1;
             let lsb = $lsb + index*width;
             let msb = lsb + width - 1;
@@ -107,7 +112,7 @@
         #[allow(eq_op)]
         $($vis)* fn $getter(&self, index: usize) -> $into {
             use $crate::BitRange;
-            debug_assert!(index < $count);
+            __bitfield_debug_assert!(index < $count);
             let width = $msb - $lsb + 1;
             let lsb = $lsb + index*width;
             let msb = lsb + width - 1;
@@ -242,11 +247,11 @@
 
 /// }
 /// ```
-#[macro_export]
+#[macro_export(local_inner_macros)]
 macro_rules! bitfield_debug {
     (struct $name:ident; $($rest:tt)*) => {
         fn fmt(&self, f: &mut $crate::fmt::Formatter) -> $crate::fmt::Result {
-            let mut debug_struct = f.debug_struct(stringify!($name));
+            let mut debug_struct = f.debug_struct(__bitfield_stringify!($name));
             debug_struct.field(".0", &self.0);
             bitfield_debug!{debug_struct, self, $($rest)*}
             debug_struct.finish()
@@ -270,12 +275,12 @@
         for (i, e) in (&mut array).into_iter().enumerate() {
             *e = $self.$getter(i);
         }
-        $debug_struct.field(stringify!($getter), &array);
+        $debug_struct.field(__bitfield_stringify!($getter), &array);
         bitfield_debug!{$debug_struct, $self, $($rest)*}
     };
     ($debug_struct:ident, $self:ident, $getter:ident, $setter:tt: $($exprs:expr),*; $($rest:tt)*)
         => {
-        $debug_struct.field(stringify!($getter), &$self.$getter());
+        $debug_struct.field(__bitfield_stringify!($getter), &$self.$getter());
         bitfield_debug!{$debug_struct, $self, $($rest)*}
     };
     ($debug_struct:ident, $self:ident, into $into:ty, $($rest:tt)*) => {
@@ -318,7 +323,7 @@
 /// bitfield_bitrange!{struct BitField3(MSB0 [u8])}
 /// ```
 ///
-#[macro_export]
+#[macro_export(local_inner_macros)]
 macro_rules! bitfield_bitrange {
     (@impl_bitrange_slice $name:ident, $slice_ty:ty, $bitrange_ty:ty) => {
         impl<T: AsMut<[$slice_ty]> + AsRef<[$slice_ty]>> $crate::BitRange<$bitrange_ty>
@@ -327,7 +332,7 @@
                     let bit_len = $crate::size_of::<$slice_ty>()*8;
                     let value_bit_len = $crate::size_of::<$bitrange_ty>()*8;
                     let mut value = 0;
-                    for i in (lsb..msb+1).rev() {
+                    for i in (lsb..=msb).rev() {
                         value <<= 1;
                         value |= ((self.0.as_ref()[i/bit_len] >> (i%bit_len)) & 1) as $bitrange_ty;
                     }
@@ -337,7 +342,7 @@
                 fn set_bit_range(&mut self, msb: usize, lsb: usize, value: $bitrange_ty) {
                     let bit_len = $crate::size_of::<$slice_ty>()*8;
                     let mut value = value;
-                    for i in lsb..msb+1 {
+                    for i in lsb..=msb {
                         self.0.as_mut()[i/bit_len] &= !(1 << (i%bit_len));
                         self.0.as_mut()[i/bit_len] |= (value & 1) as $slice_ty << (i%bit_len);
                         value >>= 1;
@@ -352,7 +357,7 @@
                 let bit_len = $crate::size_of::<$slice_ty>()*8;
                 let value_bit_len = $crate::size_of::<$bitrange_ty>()*8;
                 let mut value = 0;
-                for i in lsb..msb+1 {
+                for i in lsb..=msb {
                     value <<= 1;
                     value |= ((self.0.as_ref()[i/bit_len] >> (bit_len - i%bit_len - 1)) & 1)
                         as $bitrange_ty;
@@ -363,7 +368,7 @@
             fn set_bit_range(&mut self, msb: usize, lsb: usize, value: $bitrange_ty) {
                 let bit_len = $crate::size_of::<$slice_ty>()*8;
                 let mut value = value;
-                for i in (lsb..msb+1).rev() {
+                for i in (lsb..=msb).rev() {
                     self.0.as_mut()[i/bit_len] &= !(1 << (bit_len - i%bit_len - 1));
                     self.0.as_mut()[i/bit_len] |= (value & 1) as $slice_ty
                         << (bit_len - i%bit_len - 1);
@@ -377,20 +382,24 @@
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, u16);
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, u32);
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, u64);
+        bitfield_bitrange!(@impl_bitrange_slice $name, $t, u128);
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, i8);
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, i16);
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, i32);
         bitfield_bitrange!(@impl_bitrange_slice $name, $t, i64);
+        bitfield_bitrange!(@impl_bitrange_slice $name, $t, i128);
     };
     (struct $name:ident(MSB0 [$t:ty])) => {
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, u8);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, u16);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, u32);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, u64);
+        bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, u128);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, i8);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, i16);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, i32);
         bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, i64);
+        bitfield_bitrange!(@impl_bitrange_slice_msb0 $name, $t, i128);
     };
     (struct $name:ident($t:ty)) => {
         impl<T> $crate::BitRange<T> for $name where $t: $crate::BitRange<T> {
@@ -460,7 +469,7 @@
 ///     }
 /// }
 /// ```
-#[macro_export]
+#[macro_export(local_inner_macros)]
 macro_rules! bitfield {
     ($(#[$attribute:meta])* pub struct $($rest:tt)*) => {
         bitfield!($(#[$attribute])* (pub) struct $($rest)*);
@@ -566,6 +575,8 @@
     ($t:ty, $bitrange_ty:ty) => {
         impl BitRange<$bitrange_ty> for $t {
             #[inline]
+            #[allow(unknown_lints)]
+            #[allow(cast_lossless)]
             fn bit_range(&self, msb: usize, lsb: usize) -> $bitrange_ty {
                 let bit_len = size_of::<$t>()*8;
                 let result_bit_len = size_of::<$bitrange_ty>()*8;
@@ -590,24 +601,38 @@
     }
 }
 
-impl_bitrange_for_u!{u8, u8}
-impl_bitrange_for_u!{u16, u8}
-impl_bitrange_for_u!{u16, u16}
-impl_bitrange_for_u!{u32, u8}
-impl_bitrange_for_u!{u32, u16}
-impl_bitrange_for_u!{u32, u32}
-impl_bitrange_for_u!{u64, u8}
-impl_bitrange_for_u!{u64, u16}
-impl_bitrange_for_u!{u64, u32}
-impl_bitrange_for_u!{u64, u64}
+macro_rules! impl_bitrange_for_u_combinations {
+((),($($bitrange_ty:ty),*)) => {
 
-impl_bitrange_for_u!{u8, i8}
-impl_bitrange_for_u!{u16, i8}
-impl_bitrange_for_u!{u16, i16}
-impl_bitrange_for_u!{u32, i8}
-impl_bitrange_for_u!{u32, i16}
-impl_bitrange_for_u!{u32, i32}
-impl_bitrange_for_u!{u64, i8}
-impl_bitrange_for_u!{u64, i16}
-impl_bitrange_for_u!{u64, i32}
-impl_bitrange_for_u!{u64, i64}
+};
+(($t:ty),($($bitrange_ty:ty),*)) => {
+        $(impl_bitrange_for_u!{$t, $bitrange_ty})*
+};
+    (($t_head:ty, $($t_rest:ty),*),($($bitrange_ty:ty),*)) => {
+        impl_bitrange_for_u_combinations!{($t_head), ($($bitrange_ty),*)}
+        impl_bitrange_for_u_combinations!{($($t_rest),*), ($($bitrange_ty),*)}
+    };
+}
+
+impl_bitrange_for_u_combinations!{(u8, u16, u32, u64, u128), (u8, u16, u32, u64, u128)}
+impl_bitrange_for_u_combinations!{(u8, u16, u32, u64, u128), (i8, i16, i32, i64, i128)}
+
+// Same as std::stringify but callable from local_inner_macros macros defined inside
+// this crate.
+#[macro_export]
+#[doc(hidden)]
+macro_rules! __bitfield_stringify {
+    ($s:ident) => {
+        stringify!($s)
+    };
+}
+
+// Same as std::debug_assert but callable from local_inner_macros macros defined inside
+// this crate.
+#[macro_export]
+#[doc(hidden)]
+macro_rules! __bitfield_debug_assert {
+    ($e:expr) => {
+        debug_assert!($e)
+    };
+}
diff --git a/rustc_deps/vendor/bitfield/tests/lib.rs b/rustc_deps/vendor/bitfield/tests/lib.rs
index b6c9a23..8accc04 100644
--- a/rustc_deps/vendor/bitfield/tests/lib.rs
+++ b/rustc_deps/vendor/bitfield/tests/lib.rs
@@ -54,6 +54,8 @@
     signed_two_bits, set_signed_two_bits: 1, 0;
     signed_eight_bits, set_signed_eight_bits: 7, 0;
     signed_eight_bits_unaligned, set_signed_eight_bits_unaligned: 8, 1;
+    u128, u128_getter, set_u128: 8, 1;
+    i128, i128_getter, set_i128: 8, 1;
 }
 
 impl FooBar {
@@ -386,6 +388,9 @@
     let _: i8 = fb.signed_two_bits();
     let _: i8 = fb.signed_eight_bits();
     let _: i8 = fb.signed_eight_bits_unaligned();
+
+    let _: u128 = fb.u128_getter();
+    let _: i128 = fb.i128_getter();
 }
 
 #[test]
@@ -418,7 +423,7 @@
                     , all_bits: 1234567890, single_bit: false, into_foo1: Foo(0), into_foo2: Foo(0)\
                     , into_foo3: Foo(0), into_foo4: Foo(0), into_foo6: [Foo(0), Foo(1), Foo(0)], \
                     signed_single_bit: 0, signed_two_bits: -2, signed_eight_bits: -46, \
-                    signed_eight_bits_unaligned: 105 }";
+                    signed_eight_bits_unaligned: 105, u128_getter: 105, i128_getter: 105 }";
     assert_eq!(expected, format!("{:?}", fb))
 }
 
@@ -434,20 +439,22 @@
     signed_foo2, set_signed_foo2: 7, 0;
     signed_foo3, set_signed_foo3: 8, 1;
     signed_foo4, set_signed_foo4: 19, 4;
+    u128, u128_getter, set_u128: 19, 4;
 }
 
 #[test]
 fn test_arraybitfield() {
     let mut ab = ArrayBitfield([0; 3]);
 
-    assert_eq!(0, ab.foo1());
-    assert_eq!(0, ab.foo2());
-    assert_eq!(0, ab.foo3());
-    assert_eq!(0, ab.foo4());
-    assert_eq!(0, ab.signed_foo1());
-    assert_eq!(0, ab.signed_foo2());
-    assert_eq!(0, ab.signed_foo3());
-    assert_eq!(0, ab.signed_foo4());
+    assert_eq!(0u32, ab.foo1());
+    assert_eq!(0u32, ab.foo2());
+    assert_eq!(0u32, ab.foo3());
+    assert_eq!(0u32, ab.foo4());
+    assert_eq!(0i32, ab.signed_foo1());
+    assert_eq!(0i32, ab.signed_foo2());
+    assert_eq!(0i32, ab.signed_foo3());
+    assert_eq!(0i32, ab.signed_foo4());
+    assert_eq!(0u128, ab.u128_getter());
 
     ab.set_foo1(1);
     assert_eq!([1, 0, 0], ab.0);
@@ -459,6 +466,7 @@
     assert_eq!(1, ab.signed_foo2());
     assert_eq!(0, ab.signed_foo3());
     assert_eq!(0, ab.signed_foo4());
+    assert_eq!(0, ab.u128_getter());
 
     ab.set_foo1(0);
     ab.set_foo2(0xFF);
@@ -471,6 +479,7 @@
     assert_eq!(-1, ab.signed_foo2());
     assert_eq!(127, ab.signed_foo3());
     assert_eq!(0x0F, ab.signed_foo4());
+    assert_eq!(0x0F, ab.u128_getter());
 
     ab.set_foo2(0);
     ab.set_foo3(0xFF);
@@ -483,6 +492,7 @@
     assert_eq!(-2, ab.signed_foo2());
     assert_eq!(-1, ab.signed_foo3());
     assert_eq!(0x1F, ab.signed_foo4());
+    assert_eq!(0x1F, ab.u128_getter());
 
     ab.set_foo3(0);
     ab.set_foo4(0xFFFF);
@@ -495,6 +505,7 @@
     assert_eq!(-16, ab.signed_foo2());
     assert_eq!(-8, ab.signed_foo3());
     assert_eq!(-1, ab.signed_foo4());
+    assert_eq!(0xFFFF, ab.u128_getter());
 
     ab.set_foo4(0x0);
     ab.set_signed_foo1(0);
@@ -526,6 +537,10 @@
     ab.set_signed_foo3(0);
     ab.set_signed_foo4(-1);
     assert_eq!([0xF0, 0xFF, 0x0F], ab.0);
+
+    ab.set_signed_foo4(0);
+    ab.set_u128(0xFFFF);
+    assert_eq!([0xF0, 0xFF, 0x0F], ab.0);
 }
 
 #[test]
diff --git a/rustc_deps/vendor/brotli2/.cargo-checksum.json b/rustc_deps/vendor/brotli2/.cargo-checksum.json
index 5a51eea..3841a4e 100644
--- a/rustc_deps/vendor/brotli2/.cargo-checksum.json
+++ b/rustc_deps/vendor/brotli2/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".gitmodules":"a4581fcde158f520453fb5d0cd0401351500f9aa50c5f7eed69e72dcc1bd696b",".travis.yml":"4051f29300a08e5989cbf7e150eb24ddacc71a42eb5fa9a31bb35ac05cb271b4","Cargo.toml":"2a4ba8974c339b88a32f65d4af2fdf32e4c58400e1d10911973116fbfb66ff16","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"8d0735fb4a463ed0b6eb78e707b6a335dd9e44d1fdaa63b7d278d522d1e0b8a7","appveyor.yml":"9d490c354ada9a2b686ddd48804442ffd7ea3629e9e76620a6c949c64ffcb56d","examples/all-read-write-roundtrips.rs":"46533ce590947769ea927f74ae61e1eb54011c41f12aee1ac8589f63e4e25ea5","src/bufread.rs":"5988988823f70b73ee348e86566c44f2716dbf003b45a2e30ac411db4315737e","src/lib.rs":"8a66106c4aec28bc3afa01f783fb1c3e2eb6be15f4c77b5064c5ffea85c8f943","src/raw.rs":"0349b95eb87474e66f9a3cd4c7ce64e409ac44797fa015ae11650002f1dbdbb9","src/read.rs":"bf3b20d6385adf8c2f32314e6ec9ed7a71acb4ffa1b69c42dd62df032d7e53e0","src/write.rs":"0e03130e3dff1b4082f649cdd3d34c5a4c675dc3702ec9ebfcd32940f9655a93","tests/drop-incomplete.rs":"bbdeb0d4f00ed1dc3902badba4758cf020c390c5727a51605a71377f3723b0ee"},"package":"0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e"}
\ No newline at end of file
+{"files":{"Cargo.toml":"2a4ba8974c339b88a32f65d4af2fdf32e4c58400e1d10911973116fbfb66ff16","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"8d0735fb4a463ed0b6eb78e707b6a335dd9e44d1fdaa63b7d278d522d1e0b8a7","appveyor.yml":"9d490c354ada9a2b686ddd48804442ffd7ea3629e9e76620a6c949c64ffcb56d","examples/all-read-write-roundtrips.rs":"46533ce590947769ea927f74ae61e1eb54011c41f12aee1ac8589f63e4e25ea5","src/bufread.rs":"5988988823f70b73ee348e86566c44f2716dbf003b45a2e30ac411db4315737e","src/lib.rs":"8a66106c4aec28bc3afa01f783fb1c3e2eb6be15f4c77b5064c5ffea85c8f943","src/raw.rs":"0349b95eb87474e66f9a3cd4c7ce64e409ac44797fa015ae11650002f1dbdbb9","src/read.rs":"bf3b20d6385adf8c2f32314e6ec9ed7a71acb4ffa1b69c42dd62df032d7e53e0","src/write.rs":"0e03130e3dff1b4082f649cdd3d34c5a4c675dc3702ec9ebfcd32940f9655a93","tests/drop-incomplete.rs":"bbdeb0d4f00ed1dc3902badba4758cf020c390c5727a51605a71377f3723b0ee"},"package":"0cb036c3eade309815c15ddbacec5b22c4d1f3983a774ab2eac2e3e9ea85568e"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/brotli2/.gitmodules b/rustc_deps/vendor/brotli2/.gitmodules
deleted file mode 100644
index ded48e3..0000000
--- a/rustc_deps/vendor/brotli2/.gitmodules
+++ /dev/null
@@ -1,3 +0,0 @@
-[submodule "brotli-sys/brotli"]
-	path = brotli-sys/brotli
-	url = https://github.com/google/brotli
diff --git a/rustc_deps/vendor/brotli2/.travis.yml b/rustc_deps/vendor/brotli2/.travis.yml
deleted file mode 100644
index 06905c1..0000000
--- a/rustc_deps/vendor/brotli2/.travis.yml
+++ /dev/null
@@ -1,27 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-sudo: false
-before_script:
-  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-script:
-  - export CARGO_TARGET_DIR=`pwd`/target
-  - cargo test
-  - cargo run --example all-read-write-roundtrips --release
-  - cargo run --manifest-path systest/Cargo.toml
-  - cargo doc --no-deps
-  - cargo doc --no-deps --manifest-path=brotli-sys/Cargo.toml
-after_success:
-  - travis-cargo --only nightly doc-upload
-env:
-  global:
-    secure: "nJdOxmn+khWh0Zneim7Aba1ebiEzlIMn2shdWkoUsDHN40O0HZLrT+s0uIzO5KB82TEhvG6gWF7OxrHIDng2xCteeoaYLecqrzDO2atKIQS+UhV2z/SFMWA0O6ZjLz98SyDTK+avZyAuEAhogJ3MfwqaMdJv8MFHfLoGCxix1NQqYurbo9g+Fllu3slFGUFo9j4xeth7um1XU3vluZAQOhjlJXt5/sFVpsVy0Ef30z9Q+YZeaflyOmxlyTtmmTOKvLPbHhK7gKTLHK1ZJhdxrYDE2fjSeOOJlyLVgSSgOZvE03J/AgECCbcktzB0x8e8Xq+MgxmxWechooUql00PbB1HE3WKBghGckXl4IfAMAUbAVsl2s3uA4u3Ej8dZhnnKQMspAfFMFO66tEBtxg0mowO1+AzD1x+D5Fqh5SxxcMM8WqqayjEGhnYaDrNTqbbJPYLjDLWfuXdcrb4RKfydHIPKosCPqG7/+b/2/WrwqFFFWnr+bh3r93iAo5Cz9cE10gx2CMrbQKp9uyJqj4OpOac3dvTuGVN5ewEOp5bKplY4ZXkrGZYOmjUxkgN96erdyVgK9zRngZzxRuObhavVrvkL2F0L6/zDuPso2aDSWliVnuxR0J7Zri5cTCqa1dgU8KeUEi9RJjNcPhaDXnw4f/nnhITnXGHJa5SoOqY/N0="
-
-notifications:
-  email:
-    on_success: never
-os:
-  - linux
-  - osx
diff --git a/rustc_deps/vendor/bytecount/.cargo-checksum.json b/rustc_deps/vendor/bytecount/.cargo-checksum.json
index 327ddf3..fc9ddae 100644
--- a/rustc_deps/vendor/bytecount/.cargo-checksum.json
+++ b/rustc_deps/vendor/bytecount/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"74b8f8f99b6e4ae82a8f033ce8d9e25b93f70238be992ee7ebb9f0f6b26fbbe4","Cargo.toml":"c55daa401884ddf1c4e07f3f5e1414fdd2c3d1b74da2c2438462020f444d9117","LICENSE.Apache2":"b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1","LICENSE.MIT":"a5dea80c1f383cb5f80a6bb0da5e55a2beb9f24adb123ce6300af2cbaaa3bf65","README.md":"d0133fa6d43c421211840a6e516e9d5de4565b883d71542fa9ad692b67db1011","appveyor.yml":"a56db7056cbb793bbfd02fa58c2f63e8146b259e7871a4d072c7352f913aa375","benches/bench.rs":"da9497e9e391e8cc0b88130d60cbdb33c101aafb6875de358b42999eff49e077","src/lib.rs":"9e2dad8863d0b6b75a4a1f804bb3b3b6a0130adcffee152a1c531015d3598658","tests/check.rs":"55972bf46c81fbc5442ede6ba71f07a148aca5145b726ad52e2283957a63313b"},"package":"f861d9ce359f56dbcb6e0c2a1cb84e52ad732cadb57b806adeb3c7668caccbd8"}
\ No newline at end of file
+{"files":{"Cargo.toml":"c55daa401884ddf1c4e07f3f5e1414fdd2c3d1b74da2c2438462020f444d9117","LICENSE.Apache2":"b40930bbcf80744c86c46a12bc9da056641d722716c378f5659b9e555ef833e1","LICENSE.MIT":"a5dea80c1f383cb5f80a6bb0da5e55a2beb9f24adb123ce6300af2cbaaa3bf65","README.md":"d0133fa6d43c421211840a6e516e9d5de4565b883d71542fa9ad692b67db1011","appveyor.yml":"a56db7056cbb793bbfd02fa58c2f63e8146b259e7871a4d072c7352f913aa375","benches/bench.rs":"da9497e9e391e8cc0b88130d60cbdb33c101aafb6875de358b42999eff49e077","src/lib.rs":"9e2dad8863d0b6b75a4a1f804bb3b3b6a0130adcffee152a1c531015d3598658","tests/check.rs":"55972bf46c81fbc5442ede6ba71f07a148aca5145b726ad52e2283957a63313b"},"package":"f861d9ce359f56dbcb6e0c2a1cb84e52ad732cadb57b806adeb3c7668caccbd8"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/bytecount/.travis.yml b/rustc_deps/vendor/bytecount/.travis.yml
deleted file mode 100644
index f376440..0000000
--- a/rustc_deps/vendor/bytecount/.travis.yml
+++ /dev/null
@@ -1,44 +0,0 @@
-language: rust
-sudo: false
-cache: cargo
-rust:
-  - 1.20.0
-  - stable
-  - beta
-  - nightly
-os:
-  - linux
-  - osx
-env:
-  - ARCH=x86_64
-  - FEATURES=""
-matrix:
-  include:
-    - rust: stable
-      env:
-        - ARCH=i686
-    - rust: beta
-      env:
-        - ARCH=i686
-    - rust: nightly
-      env:
-        - ARCH=i686
-    - rust: nightly
-      env:
-        - ARCH=x86_64
-        - FEATURES="--features simd-accel"
-    - rust: nightly
-      env:
-        - ARCH=x86_64
-        - FEATURES="--features avx-accel"
-        - RUSTFLAGS="-C target-feature=+avx"
-addons:
-  apt:
-    packages:
-      - gcc-multilib
-script: |
-  echo ARCH=$ARCH
-  echo FEATURES=$FEATURES
-  echo RUSTFLAGS=$RUSTFLAGS
-  curl -sSL https://raw.githubusercontent.com/carllerche/travis-rust-matrix/master/test | bash
-  cargo test --release $FEATURES && COUNTS="0,10,1000,100000,10000000" cargo bench $FEATURES
diff --git a/rustc_deps/vendor/byteorder/.cargo-checksum.json b/rustc_deps/vendor/byteorder/.cargo-checksum.json
index 48996ae..e46d9f0 100644
--- a/rustc_deps/vendor/byteorder/.cargo-checksum.json
+++ b/rustc_deps/vendor/byteorder/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"919a5815356178b82e3f63a175e61ddac38db62be65ea55558baf878bd39d0e2","CHANGELOG.md":"dc0a497d6932b874a32c1a457e344bdcd27a1767a174d163f19d66b837477a08","COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"d685e44dbfd61f46a4477d7cbf94791d93bab330c9763926d247e405f487ce8b","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","README.md":"97c01a66dbff4615acd49a8c3a85d137bf29cc113fa514910195bb11aef445bc","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","benches/bench.rs":"5dbfb724aa137efdff2cf0faeb728a3d302eda097ba5189de2d82314ce500654","ci/script.sh":"492d6fc8d196b8a50ca55ab6259239d31053dec90b31c55135b3d88d1a3bc7ed","src/io.rs":"d9759a25c625aa341b23bdb489144b1e9554db11bc2fa799a2a6ecfbc442ea5e","src/lib.rs":"fd18e7969a80314537ba41b3c460284975c0d4df4b72f27527506cb5bd889ae8"},"package":"90492c5858dd7d2e78691cfb89f90d273a2800fc11d98f60786e5d87e2f83781"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"dc0a497d6932b874a32c1a457e344bdcd27a1767a174d163f19d66b837477a08","COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"9f119d940ff1131bb71fb7c2b10c36ae91b45dbcf010975ccc555268a5b79165","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","README.md":"97c01a66dbff4615acd49a8c3a85d137bf29cc113fa514910195bb11aef445bc","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","benches/bench.rs":"5dbfb724aa137efdff2cf0faeb728a3d302eda097ba5189de2d82314ce500654","src/io.rs":"d9759a25c625aa341b23bdb489144b1e9554db11bc2fa799a2a6ecfbc442ea5e","src/lib.rs":"fd18e7969a80314537ba41b3c460284975c0d4df4b72f27527506cb5bd889ae8"},"package":"94f88df23a25417badc922ab0f5716cc1330e87f71ddd9203b3a3ccd9cedf75d"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/byteorder/.travis.yml b/rustc_deps/vendor/byteorder/.travis.yml
deleted file mode 100644
index 082c5cc..0000000
--- a/rustc_deps/vendor/byteorder/.travis.yml
+++ /dev/null
@@ -1,15 +0,0 @@
-language: rust
-matrix:
-  include:
-    - rust: 1.12.0
-    - rust: stable
-    - rust: beta
-    - rust: nightly
-    - env: CROSS_TARGET=mips64-unknown-linux-gnuabi64
-      rust: stable
-      services: docker
-      sudo: required
-script: ci/script.sh
-branches:
-  only:
-    - master
diff --git a/rustc_deps/vendor/byteorder/Cargo.toml b/rustc_deps/vendor/byteorder/Cargo.toml
index 0a940ed..4ddaae7 100644
--- a/rustc_deps/vendor/byteorder/Cargo.toml
+++ b/rustc_deps/vendor/byteorder/Cargo.toml
@@ -12,15 +12,16 @@
 
 [package]
 name = "byteorder"
-version = "1.2.6"
+version = "1.2.7"
 authors = ["Andrew Gallant <jamslam@gmail.com>"]
+exclude = ["/ci/*"]
 description = "Library for reading/writing numbers in big-endian and little-endian."
 homepage = "https://github.com/BurntSushi/byteorder"
 documentation = "https://docs.rs/byteorder"
 readme = "README.md"
 keywords = ["byte", "endian", "big-endian", "little-endian", "binary"]
 categories = ["encoding", "parsing"]
-license = "Unlicense/MIT"
+license = "Unlicense OR MIT"
 repository = "https://github.com/BurntSushi/byteorder"
 [profile.bench]
 opt-level = 3
diff --git a/rustc_deps/vendor/byteorder/ci/script.sh b/rustc_deps/vendor/byteorder/ci/script.sh
deleted file mode 100755
index bc48672..0000000
--- a/rustc_deps/vendor/byteorder/ci/script.sh
+++ /dev/null
@@ -1,45 +0,0 @@
-#!/bin/sh
-
-set -ex
-
-# Setup some variables for executing cargo commands.
-# Things are a little different if we're testing with cross.
-if [ ! z "$CROSS_TARGET" ]; then
-  rustup target add "$CROSS_TARGET"
-  cargo install cross --force
-  export CARGO_CMD="cross"
-  export TARGET_PARAM="--target $CROSS_TARGET"
-else
-  export CARGO_CMD="cargo"
-  export TARGET_PARAM=""
-fi
-
-# Test the build and docs.
-"$CARGO_CMD" build --verbose $TARGET_PARAM
-"$CARGO_CMD" doc --verbose $TARGET_PARAM
-
-# If we're testing on an older version of Rust, then only check that we
-# can build the crate. This is because the dev dependencies might be updated
-# more frequently, and therefore might require a newer version of Rust.
-#
-# This isn't ideal. It's a compromise.
-if [ "$TRAVIS_RUST_VERSION" = "1.12.0" ]; then
-  exit
-fi
-
-"$CARGO_CMD" test --verbose $TARGET_PARAM
-"$CARGO_CMD" test --verbose --no-default-features --lib $TARGET_PARAM
-if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then
-  "$CARGO_CMD" test \
-    --verbose --features i128 $TARGET_PARAM
-  "$CARGO_CMD" test \
-    --verbose --no-default-features --features i128 --lib $TARGET_PARAM
-  "$CARGO_CMD" bench \
-    --verbose --no-run $TARGET_PARAM
-  "$CARGO_CMD" bench \
-    --verbose --no-run --no-default-features $TARGET_PARAM
-  "$CARGO_CMD" bench \
-    --verbose --no-run --features i128 $TARGET_PARAM
-  "$CARGO_CMD" bench \
-    --verbose --no-run --no-default-features --features i128 $TARGET_PARAM
-fi
diff --git a/rustc_deps/vendor/bytes/.cargo-checksum.json b/rustc_deps/vendor/bytes/.cargo-checksum.json
index ff47d8f..e9e0ee9 100644
--- a/rustc_deps/vendor/bytes/.cargo-checksum.json
+++ b/rustc_deps/vendor/bytes/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{"CHANGELOG.md":"80c25e678aace557aa07a099c4ff3b1c6fd84d446081d6cab6bcc327b652992f","Cargo.toml":"88b88d0dbf73337edfadf1282e3735daba719be6a35bdd99684d281b3784be43","LICENSE":"45f522cacecb1023856e46df79ca625dfc550c94910078bd8aec6e02880b3d42","README.md":"3ca600d7b4175eee634621a870904fe5ec761e6fd623f745423d378dec1bfd51","benches/bytes.rs":"a60889c35cf76faf2b403f94d3ab2831a569f2e1f6e4cc4d5e88f3c26bddb8b0","ci/before_deploy.ps1":"a8ee0204dd1397a245a47626fecd98eff5da76e12b15139c06271b3cc309a3e1","ci/before_deploy.sh":"ea008e2c544482cba5b659c17887ccd5354779c629096f28e667d40391299cc5","ci/install.sh":"8b165fc99df296261fcc9cdcbc8b8a177c11c505cdc9255cc19efb66cb0055db","ci/script.sh":"4e6f6b7df02d316ce5166a3526dc6bca6b6d051dbc5bd6d5b28a7c79fc646834","ci/tsan":"9ecfbd098835b05aee1453ce785bb2e2218940c10c813c77310be5fd9bb4b3e5","src/buf/buf.rs":"1b5ff3ab694380fe59588b8d195111ba663c5f8901b272b531851deb26e4629a","src/buf/buf_mut.rs":"d2f54e9c64b86c8ddd325d40b3c8e1b2132d361937bac3b5fccb7a81154b89b8","src/buf/chain.rs":"3a4f88879d27240e84e58bbeddf3f7c0958d0d81f4707245199b53e922029a26","src/buf/from_buf.rs":"949683c6a08099b280bd324d0c8646b1d6ff80af4d3e9397edb76cc2f1b18c88","src/buf/into_buf.rs":"b6e35d34533fae229f5209b95a39a1c35485f48a873a1d357d99218c486b0b95","src/buf/iter.rs":"325428e4f913beb602f6451b59847d4c8658ec23939a15f7b145733969c17f03","src/buf/mod.rs":"4f385ce47d6d19a064a1dbec3339e95e116aa9b501eb9d8a47030c2794e1ee9e","src/buf/reader.rs":"62098e87bd1aa8b7f57ed4a4d1b5417462f01ad2cfebfbac46b6ce7f00ea0192","src/buf/take.rs":"0bdd0720afc546c999e5a3125f20b6f31a5692b37f7218c25f414773e2702f3d","src/buf/writer.rs":"4a28c1d362e837682a4b3197732a6dbb4072dc660f0dbba18616679adf8a60f2","src/bytes.rs":"a5db1c15578d41e992e52b2de6d2597ffc39b610e85595d57fd964a4d3fd94ac","src/debug.rs":"a8bd8062e7e500fdc5a79cb6c848fb860be8359d95e1c91034777fe33c78d54e","src/either.rs":"5ecb5bcec6faea2454d274cdfef8fd26096e1b93d586cb29aebfe42291026e43","src/lib.rs":"6a19bb9c7340d31024c20f94111322fca1e49f4552da5276f9ed95b582e38ce7","src/serde.rs":"e8d0fe3630e173272756fb24a8c3ccb112f4cb551b8b88b64f669a71f39ef83b","tests/test_buf.rs":"6409f32f734969bebeffa7592fed531953d252c5a639e422b6e4b14ec024b1d5","tests/test_buf_mut.rs":"a6a653d5053340b0254900c33e36df6db1421f821c3e985be0044b1b447ecedc","tests/test_bytes.rs":"59538b70536e0947e00b9503da24f2c511cd8b454ad2d57b8e7e7f6ed34b0490","tests/test_chain.rs":"3fe1f28f3bce4377f8ed506718f95f3ed3ebaf251a1cb43b2705331e3dd6b43a","tests/test_debug.rs":"4cfd44c30d0b8f7c5eb8e8916ad7436e9f538732fe9f4b696dc22b84c31ac64a","tests/test_from_buf.rs":"9bf743c77e69c643d0a7673426547dacaedbcc65028a26cf5864eb6714e4897a","tests/test_iter.rs":"bc8a5da0b3cc7e5a5dc37e91dd2a3ca3fc78ba74b087883473043be45cd9b265","tests/test_serde.rs":"98e0ab121153a7ead47538257ac7fc7d5db081fc35050552b5e5dc9500b414f9","tests/test_take.rs":"bb81822eec5d3774bd2626f0f29b543d3651f4f5a95c51dfe8f93dec8b4f8e94"},"package":"0ce55bd354b095246fc34caf4e9e242f5297a7fd938b090cadfea6eee614aa62"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"b5e0492631607715ba70ac212000677787b3bbb3df6f09955726bca61af2cbe0","Cargo.toml":"d66aad58239707951a277c0c2bae18d18b23b75df549f0e5bf97f29e2282bb15","LICENSE":"45f522cacecb1023856e46df79ca625dfc550c94910078bd8aec6e02880b3d42","README.md":"3ca600d7b4175eee634621a870904fe5ec761e6fd623f745423d378dec1bfd51","benches/bytes.rs":"a60889c35cf76faf2b403f94d3ab2831a569f2e1f6e4cc4d5e88f3c26bddb8b0","ci/before_deploy.ps1":"a8ee0204dd1397a245a47626fecd98eff5da76e12b15139c06271b3cc309a3e1","ci/before_deploy.sh":"ea008e2c544482cba5b659c17887ccd5354779c629096f28e667d40391299cc5","ci/install.sh":"8b165fc99df296261fcc9cdcbc8b8a177c11c505cdc9255cc19efb66cb0055db","ci/script.sh":"4e6f6b7df02d316ce5166a3526dc6bca6b6d051dbc5bd6d5b28a7c79fc646834","ci/tsan":"ab91828d326a1fa304097de624c00bc264066223fcb6ff2a0e1eef0b3365abeb","src/buf/buf.rs":"bb75d85a07d132c869cf2f34200003c8ff9f721642df17a8a98a935a7562d886","src/buf/buf_mut.rs":"576750f263091bfb15e7ad00be086d252fb75bbf8d63017186ce67438987355d","src/buf/chain.rs":"3a4f88879d27240e84e58bbeddf3f7c0958d0d81f4707245199b53e922029a26","src/buf/from_buf.rs":"949683c6a08099b280bd324d0c8646b1d6ff80af4d3e9397edb76cc2f1b18c88","src/buf/into_buf.rs":"b6e35d34533fae229f5209b95a39a1c35485f48a873a1d357d99218c486b0b95","src/buf/iter.rs":"325428e4f913beb602f6451b59847d4c8658ec23939a15f7b145733969c17f03","src/buf/mod.rs":"4f385ce47d6d19a064a1dbec3339e95e116aa9b501eb9d8a47030c2794e1ee9e","src/buf/reader.rs":"ba26856d56300cf4397cf0d1b19089267c8e51355c38133e3d25d63331bb3a7a","src/buf/take.rs":"0bdd0720afc546c999e5a3125f20b6f31a5692b37f7218c25f414773e2702f3d","src/buf/writer.rs":"4a28c1d362e837682a4b3197732a6dbb4072dc660f0dbba18616679adf8a60f2","src/bytes.rs":"e8bd184cf8b3966d73676bac3dbffcd75ddbbab159ba5d026c49a4337e8c0ab7","src/debug.rs":"a8bd8062e7e500fdc5a79cb6c848fb860be8359d95e1c91034777fe33c78d54e","src/either.rs":"5ecb5bcec6faea2454d274cdfef8fd26096e1b93d586cb29aebfe42291026e43","src/lib.rs":"5388f522820f8837b3e3ce0f59d0ee3b34c9ba5f60b7cade605a9909015997d7","src/serde.rs":"e8d0fe3630e173272756fb24a8c3ccb112f4cb551b8b88b64f669a71f39ef83b","tests/test_buf.rs":"6409f32f734969bebeffa7592fed531953d252c5a639e422b6e4b14ec024b1d5","tests/test_buf_mut.rs":"a6a653d5053340b0254900c33e36df6db1421f821c3e985be0044b1b447ecedc","tests/test_bytes.rs":"59538b70536e0947e00b9503da24f2c511cd8b454ad2d57b8e7e7f6ed34b0490","tests/test_chain.rs":"3fe1f28f3bce4377f8ed506718f95f3ed3ebaf251a1cb43b2705331e3dd6b43a","tests/test_debug.rs":"4cfd44c30d0b8f7c5eb8e8916ad7436e9f538732fe9f4b696dc22b84c31ac64a","tests/test_from_buf.rs":"9bf743c77e69c643d0a7673426547dacaedbcc65028a26cf5864eb6714e4897a","tests/test_iter.rs":"bc8a5da0b3cc7e5a5dc37e91dd2a3ca3fc78ba74b087883473043be45cd9b265","tests/test_reader.rs":"a23c969882dda095c42f5e4da54b2274854c3ece9864ff9ff2439ab4ee289b11","tests/test_serde.rs":"98e0ab121153a7ead47538257ac7fc7d5db081fc35050552b5e5dc9500b414f9","tests/test_take.rs":"bb81822eec5d3774bd2626f0f29b543d3651f4f5a95c51dfe8f93dec8b4f8e94"},"package":"40ade3d27603c2cb345eb0912aec461a6dec7e06a4ae48589904e808335c7afa"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/bytes/CHANGELOG.md b/rustc_deps/vendor/bytes/CHANGELOG.md
index c58c040..1e090c7 100644
--- a/rustc_deps/vendor/bytes/CHANGELOG.md
+++ b/rustc_deps/vendor/bytes/CHANGELOG.md
@@ -1,3 +1,9 @@
+# 0.4.11 (November 17, 2018)
+
+* Use raw pointers for potentially racy loads (#233).
+* Implement `BufRead` for `buf::Reader` (#232).
+* Documentation tweaks (#234).
+
 # 0.4.10 (September 4, 2018)
 
 * impl `Buf` and `BufMut` for `Either` (#225).
diff --git a/rustc_deps/vendor/bytes/Cargo.toml b/rustc_deps/vendor/bytes/Cargo.toml
index 709a297..b90cd2f 100644
--- a/rustc_deps/vendor/bytes/Cargo.toml
+++ b/rustc_deps/vendor/bytes/Cargo.toml
@@ -12,12 +12,12 @@
 
 [package]
 name = "bytes"
-version = "0.4.10"
+version = "0.4.11"
 authors = ["Carl Lerche <me@carllerche.com>"]
 exclude = [".gitignore", ".travis.yml", "deploy.sh", "bench/**/*", "test/**/*"]
 description = "Types and traits for working with bytes"
 homepage = "https://github.com/carllerche/bytes"
-documentation = "https://docs.rs/bytes/0.4.10/bytes"
+documentation = "https://docs.rs/bytes/0.4.11/bytes"
 readme = "README.md"
 keywords = ["buffers", "zero-copy", "io"]
 categories = ["network-programming", "data-structures"]
diff --git a/rustc_deps/vendor/bytes/ci/tsan b/rustc_deps/vendor/bytes/ci/tsan
index 2957406..9cc5484 100644
--- a/rustc_deps/vendor/bytes/ci/tsan
+++ b/rustc_deps/vendor/bytes/ci/tsan
@@ -22,3 +22,7 @@
 # `is_inline_or_static` is explicitly called concurrently without synchronization.
 # The safety explanation can be found in a comment.
 race:Inner::is_inline_or_static
+
+# This ignores a false positive caused by `thread::park()`/`thread::unpark()`.
+# See: https://github.com/rust-lang/rust/pull/54806#issuecomment-436193353
+race:pthread_cond_destroy
diff --git a/rustc_deps/vendor/bytes/src/buf/buf.rs b/rustc_deps/vendor/bytes/src/buf/buf.rs
index b72c8d9..dc20567 100644
--- a/rustc_deps/vendor/bytes/src/buf/buf.rs
+++ b/rustc_deps/vendor/bytes/src/buf/buf.rs
@@ -91,7 +91,8 @@
     fn remaining(&self) -> usize;
 
     /// Returns a slice starting at the current position and of length between 0
-    /// and `Buf::remaining()`.
+    /// and `Buf::remaining()`. Note that this *can* return shorter slice (this allows
+    /// non-continuous internal representation).
     ///
     /// This is a lower level function. Most operations are done with other
     /// functions.
diff --git a/rustc_deps/vendor/bytes/src/buf/buf_mut.rs b/rustc_deps/vendor/bytes/src/buf/buf_mut.rs
index 71dbda9..7f3c1f7 100644
--- a/rustc_deps/vendor/bytes/src/buf/buf_mut.rs
+++ b/rustc_deps/vendor/bytes/src/buf/buf_mut.rs
@@ -121,7 +121,8 @@
     }
 
     /// Returns a mutable slice starting at the current BufMut position and of
-    /// length between 0 and `BufMut::remaining_mut()`.
+    /// length between 0 and `BufMut::remaining_mut()`. Note that this *can* be shorter than the
+    /// whole remainder of the buffer (this allows non-continuous implementation).
     ///
     /// This is a lower level function. Most operations are done with other
     /// functions.
diff --git a/rustc_deps/vendor/bytes/src/buf/reader.rs b/rustc_deps/vendor/bytes/src/buf/reader.rs
index 59f9c33..f1154da 100644
--- a/rustc_deps/vendor/bytes/src/buf/reader.rs
+++ b/rustc_deps/vendor/bytes/src/buf/reader.rs
@@ -86,3 +86,12 @@
         Ok(len)
     }
 }
+
+impl<B: Buf + Sized> io::BufRead for Reader<B> {
+    fn fill_buf(&mut self) -> io::Result<&[u8]> {
+        Ok(self.buf.bytes())
+    }
+    fn consume(&mut self, amt: usize) {
+        self.buf.advance(amt)
+    }
+}
diff --git a/rustc_deps/vendor/bytes/src/bytes.rs b/rustc_deps/vendor/bytes/src/bytes.rs
index 1cc168f..3d6fb31 100644
--- a/rustc_deps/vendor/bytes/src/bytes.rs
+++ b/rustc_deps/vendor/bytes/src/bytes.rs
@@ -2438,7 +2438,7 @@
         #[inline]
         fn imp(arc: &AtomicPtr<Shared>) -> usize {
             unsafe {
-                let p: &u8 = mem::transmute(arc);
+                let p: *const u8 = mem::transmute(arc);
                 (*p as usize) & KIND_MASK
             }
         }
@@ -2447,7 +2447,7 @@
         #[inline]
         fn imp(arc: &AtomicPtr<Shared>) -> usize {
             unsafe {
-                let p: &usize = mem::transmute(arc);
+                let p: *const usize = mem::transmute(arc);
                 *p & KIND_MASK
             }
         }
diff --git a/rustc_deps/vendor/bytes/src/lib.rs b/rustc_deps/vendor/bytes/src/lib.rs
index 9cc6eee..54c5b81 100644
--- a/rustc_deps/vendor/bytes/src/lib.rs
+++ b/rustc_deps/vendor/bytes/src/lib.rs
@@ -69,7 +69,7 @@
 //! and `BufMut` are infallible.
 
 #![deny(warnings, missing_docs, missing_debug_implementations)]
-#![doc(html_root_url = "https://docs.rs/bytes/0.4.10")]
+#![doc(html_root_url = "https://docs.rs/bytes/0.4.11")]
 
 extern crate byteorder;
 extern crate iovec;
diff --git a/rustc_deps/vendor/bytes/tests/test_reader.rs b/rustc_deps/vendor/bytes/tests/test_reader.rs
new file mode 100644
index 0000000..7103f35
--- /dev/null
+++ b/rustc_deps/vendor/bytes/tests/test_reader.rs
@@ -0,0 +1,28 @@
+extern crate bytes;
+
+use std::io::{BufRead, Cursor, Read};
+
+use bytes::Buf;
+
+#[test]
+fn read() {
+    let buf1 = Cursor::new(b"hello ");
+    let buf2 = Cursor::new(b"world");
+    let buf = Buf::chain(buf1, buf2); // Disambiguate with Read::chain
+    let mut buffer = Vec::new();
+    buf.reader().read_to_end(&mut buffer).unwrap();
+    assert_eq!(b"hello world", &buffer[..]);
+}
+
+#[test]
+fn buf_read() {
+    let buf1 = Cursor::new(b"hell");
+    let buf2 = Cursor::new(b"o\nworld");
+    let mut reader = Buf::chain(buf1, buf2).reader();
+    let mut line = String::new();
+    reader.read_line(&mut line).unwrap();
+    assert_eq!("hello\n", &line);
+    line.clear();
+    reader.read_line(&mut line).unwrap();
+    assert_eq!("world", &line);
+}
diff --git a/rustc_deps/vendor/cc/.cargo-checksum.json b/rustc_deps/vendor/cc/.cargo-checksum.json
index 80e09bf..c42e4f5 100644
--- a/rustc_deps/vendor/cc/.cargo-checksum.json
+++ b/rustc_deps/vendor/cc/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"7b18272b20d4b58996deb3e2d5d76f15a27d6a63a061abeefb6553a2b8650736","Cargo.toml":"8b0ccc57b8ea0c2bfc417cc2e5c3a6750eec5c0a82d3de0ce09fe2197d2867af","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"3eeb4b0488908876c439a87cfe2bec6d550b37388993b2d8863fb1c587a84f46","appveyor.yml":"ab45bfdcf2596f357225a54e730c34d518a8f3ad56c2ed33af682cfd45bddc02","src/bin/gcc-shim.rs":"d6be9137cb48b86891e7b263adbf492e1193ffe682db9ba4a88eb1079b874b58","src/com.rs":"8b9a54af5400c259f877126cc68ea63ada4fe66e84c9b840711c95e570b15774","src/lib.rs":"a9c3515602e52501ef43dd4383418baa1e2eb66d250575d16dfcd3e60801bb25","src/registry.rs":"3cc1b5a50879fa751572878ae1d0afbfc960c11665258492754b2c8bccb0ff5d","src/setup_config.rs":"f5c45afc99ad3b7c1311242bc4baf37e861d740ab81bf6ca90e2aa283672e65a","src/winapi.rs":"d7929b36130e33f1caa6bd444b378b83023b2b82d589c6e0ab38c4ff6c950da8","src/windows_registry.rs":"bdf8d441c57e3247a305a593e6280f41021ac81f45c2f3299c406b9a68817b20","tests/cc_env.rs":"bf7b14aa52af04294f648b2934f0f1830c5a0bdac1676310b8aa1f61458e7782","tests/support/mod.rs":"80dc87e54025197104cfb62d1af7a3400a3a0ddf0f2d98ea4ef4111cb1f0c890","tests/test.rs":"653b7d9ad6503aaf2ffc6c9b86014dbad456b53bcd124c9de4714067f49e5095"},"package":"f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16"}
\ No newline at end of file
+{"files":{"Cargo.toml":"8b0ccc57b8ea0c2bfc417cc2e5c3a6750eec5c0a82d3de0ce09fe2197d2867af","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"3eeb4b0488908876c439a87cfe2bec6d550b37388993b2d8863fb1c587a84f46","appveyor.yml":"ab45bfdcf2596f357225a54e730c34d518a8f3ad56c2ed33af682cfd45bddc02","src/bin/gcc-shim.rs":"d6be9137cb48b86891e7b263adbf492e1193ffe682db9ba4a88eb1079b874b58","src/com.rs":"8b9a54af5400c259f877126cc68ea63ada4fe66e84c9b840711c95e570b15774","src/lib.rs":"a9c3515602e52501ef43dd4383418baa1e2eb66d250575d16dfcd3e60801bb25","src/registry.rs":"3cc1b5a50879fa751572878ae1d0afbfc960c11665258492754b2c8bccb0ff5d","src/setup_config.rs":"f5c45afc99ad3b7c1311242bc4baf37e861d740ab81bf6ca90e2aa283672e65a","src/winapi.rs":"d7929b36130e33f1caa6bd444b378b83023b2b82d589c6e0ab38c4ff6c950da8","src/windows_registry.rs":"bdf8d441c57e3247a305a593e6280f41021ac81f45c2f3299c406b9a68817b20","tests/cc_env.rs":"bf7b14aa52af04294f648b2934f0f1830c5a0bdac1676310b8aa1f61458e7782","tests/support/mod.rs":"80dc87e54025197104cfb62d1af7a3400a3a0ddf0f2d98ea4ef4111cb1f0c890","tests/test.rs":"653b7d9ad6503aaf2ffc6c9b86014dbad456b53bcd124c9de4714067f49e5095"},"package":"f159dfd43363c4d08055a07703eb7a3406b0dac4d0584d96965a3262db3c9d16"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/cc/.travis.yml b/rustc_deps/vendor/cc/.travis.yml
deleted file mode 100644
index 70349e6..0000000
--- a/rustc_deps/vendor/cc/.travis.yml
+++ /dev/null
@@ -1,64 +0,0 @@
-language: rust
-sudo: false
-
-matrix:
-  include:
-    - rust: 1.16.0
-      install:
-      script: cargo build
-    - rust: stable
-      env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-    - rust: stable
-      env: TARGET=i686-unknown-linux-gnu
-    - os: osx
-      env: TARGET=x86_64-apple-darwin NO_ADD=1
-    - os: osx
-      env: TARGET=aarch64-apple-ios NO_RUN=--no-run TARGET_SYSROOT=$(xcrun -sdk iphoneos --show-sdk-path)
-    - rust: beta
-      env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-    - rust: nightly
-      env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-
-    - rust: nightly
-      before_script:
-        - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-      install:
-      script:
-        - cargo doc --no-deps --all-features
-      after_success:
-        - travis-cargo --only nightly doc-upload
-
-install:
-  - if [ -z "$NO_ADD" ]; then rustup target add $TARGET; fi
-
-script:
-  - cargo build --verbose
-  # FIXME: no idea why `--test-threads=1` is required on the OSX builder, it
-  # just randomly broke one day when the travis image was upgraded, and
-  # debugging turned up no easily found source of bugs...
-  #
-  # good build - https://travis-ci.org/alexcrichton/cc-rs/builds/409602374
-  #  bad build - https://travis-ci.org/alexcrichton/cc-rs/builds/410489079
-  #
-  # Those are using the same compiler, same commit, same... everything. Except
-  # the OSX image! No idea what changed...
-  - cargo test --verbose $NO_RUN -- --test-threads=1
-  - cargo test --verbose --features parallel $NO_RUN -- --test-threads=1
-  - cargo test --manifest-path cc-test/Cargo.toml --target $TARGET $NO_RUN
-  - cargo test --manifest-path cc-test/Cargo.toml --target $TARGET --features parallel $NO_RUN
-  - cargo test --manifest-path cc-test/Cargo.toml --target $TARGET --release $NO_RUN
-  - cargo doc
-  - cargo clean && cargo build
-  - rustdoc --test README.md -L target/debug -L target/debug/deps
-
-env:
-  global:
-    secure: "CBtqrudgE0PS8x3kTr44jKbC2D4nfnmdYVecooNm0qnER4B4TSvZpZSQoCgKK6k4BYQuOSyFTOwYx6M79w39ZMOgyCP9ytB+tyMWL0/+ZuUQL04yVg4M5vd3oJMkOaXbvG56ncgPyFrseY+FPDg+mXAzvJk/nily37YXjkQj2D0="
-
-notifications:
-  email:
-    on_success: never
-addons:
-  apt:
-    packages:
-      - g++-multilib
diff --git a/rustc_deps/vendor/cfg-if/.cargo-checksum.json b/rustc_deps/vendor/cfg-if/.cargo-checksum.json
index 970762f..b744a21 100644
--- a/rustc_deps/vendor/cfg-if/.cargo-checksum.json
+++ b/rustc_deps/vendor/cfg-if/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"b1310eed4c508d9bf0d4cd22a1b900ebf2ffe87669973bbedd063722307d4329","Cargo.toml":"090d983ec20ad09e59f6b7679b48b9b54e9c0841cf2922b81cba485edcd40876","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"1cd0ebc3b30a9c9eddb0fda5515b5a52ec2b85a087328f0ee9f4d68cbb28afc2","src/lib.rs":"f02d6e295109365cf54884e5282a3e7d1e1f62857c700f23cd013e94a56bd803","tests/xcrate.rs":"30dcb70fbb9c96fda2b7825592558279f534776f72e2a8a0a3e26df4dedb3caa"},"package":"082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"}
\ No newline at end of file
+{"files":{"Cargo.toml":"090d983ec20ad09e59f6b7679b48b9b54e9c0841cf2922b81cba485edcd40876","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"1cd0ebc3b30a9c9eddb0fda5515b5a52ec2b85a087328f0ee9f4d68cbb28afc2","src/lib.rs":"f02d6e295109365cf54884e5282a3e7d1e1f62857c700f23cd013e94a56bd803","tests/xcrate.rs":"30dcb70fbb9c96fda2b7825592558279f534776f72e2a8a0a3e26df4dedb3caa"},"package":"082bb9b28e00d3c9d39cc03e64ce4cea0f1bb9b3fde493f0cbc008472d22bdf4"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/cfg-if/.travis.yml b/rustc_deps/vendor/cfg-if/.travis.yml
deleted file mode 100644
index 28ddf9b..0000000
--- a/rustc_deps/vendor/cfg-if/.travis.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-sudo: false
-before_script:
-  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-script:
-  - cargo build --verbose
-  - cargo test --verbose
-  - cargo doc --no-deps
-after_success:
-  - travis-cargo --only nightly doc-upload
-env:
-  global:
-    secure: "TyMGH+sbPmKs9lKCziKShxWr3G6im0owEchVrbUChWnQIQv1WydXftFoEoUsVl6qZspjehWK1b1AsnIgCXK0HtEi4DnqLsxs0s36bOjfg5yHBT/pETTr6kcq7KAL4Be4GmI331k6gT1Oi0TPFp7Sg9xpiWsQqKIHA5Szk2wpFQ8="
-
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/chrono/.cargo-checksum.json b/rustc_deps/vendor/chrono/.cargo-checksum.json
index c4934e1..19bebb3 100644
--- a/rustc_deps/vendor/chrono/.cargo-checksum.json
+++ b/rustc_deps/vendor/chrono/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"40caf89b122270034144d7875fcb27cf7ca9b0e150949e1a908932c4e491956f","AUTHORS.txt":"80aa54d9642f63fc62f20f60e0550f3e596de6ea69883769313c7f07a4be8f4c","CHANGELOG.md":"b9d2b2edfb98954c22e3a34c044bbd2f542cae703d06e5cf15245a1e26b32f76","Cargo.toml":"95d58b3f9a862b6bfd497e8aa87cc14ba6a43e7f6d1818094073e611db14ce43","LICENSE.txt":"46610329ff0b38effb9cb05979ff1ef761e465fed96b2eaca39e439d00129fd7","Makefile":"d76b0b1a44e90b31f2a6f97f662d65df585b1dc88253c30c01ea38d9a097a83e","README.md":"8df7579a4ce5ed034b85b91f6f3106573443138dcc568fd76063016ad2d5cc38","appveyor.yml":"b10751e92a0299968ac5cfd65e918d99e680b6ac679362655b92a393cd22c212","ci/fix-readme.sh":"750d262640a6fdc846623a569f37954bfe7604f9bcbc8f7475db38192e1da0fb","ci/travis.sh":"48eb316d163a9c5b37e4b1d4773e2f9934359a3a1dbddc3b6ae6a58ef15856b1","src/date.rs":"c8d61716eaecf8d0e1a887a0ac9bc06d2e5bf0b47eccc61e5683bdeb0f886ff8","src/datetime.rs":"34e71d822cfa70bb6d1041e3d865fcf629ffb2e29021713bd6aee8a3a6d1410f","src/div.rs":"02e6ce9c4fcafcc7931574108dd7ec0cd28b137edb52eaea654a09ab05fbaf90","src/format/mod.rs":"e36b2bee352df7f0addec7365edfd73607ebaa903d3ddb9249f5fe3c11d9da7a","src/format/parse.rs":"8d5b39483c48771932fd75a9d9892967bd7ef6f0c88d55be6a2d35d35ba21f52","src/format/parsed.rs":"a65cbc0ba13190028ca7c4de4a830b8a64acaf375285cae3a1da1bfd6e5d32f8","src/format/scan.rs":"9f8e4ce8001caf9ec76b3eddf7aa9cc5a68606165e3bb53977350c0a03536b79","src/format/strftime.rs":"532f88654cc1531e6ebdea89039bcf2c364e97478c83824f97f1c38277f3c827","src/lib.rs":"1dae4eb3a73db8dc8fd4f5d3e431fc773104a35c9efaa7a301d73f7b898fc464","src/naive/date.rs":"2fbd7069fb576416f2111298cdd59c729e70736abe53d6e69313a4e45f8a6e3d","src/naive/datetime.rs":"5ae4ed07dc199f7f4be27ef18130de385b56dceb01cefafe5e0f0eb9ed39ce7b","src/naive/internals.rs":"db79eda586b7daad5a2645d21bda80ae92f9bee9870d93d2209a7d228e4286c7","src/naive/isoweek.rs":"75101e996e0eccc6f9b2147095d82050e6dac94a741db60f654f4267bbe96fed","src/naive/time.rs":"cfa4936b341246eb0692e0a071d93707f3545825c74aee67749442ecd2aba655","src/offset/fixed.rs":"e0e41c7081e908a8ada1c1bb67fd003f8a36510c542c5088756214e276407cb9","src/offset/local.rs":"c63a88b8ab4af289cef15d04189f9656c8dfcff77fe8417bbd1182b75184f4e6","src/offset/mod.rs":"2aeeb0fa4c657e810f78ff239d7c52f07c33a2b7bdfc8b3765f4339dcafa0088","src/offset/utc.rs":"630f9513f88353892c9f554eed35d5ec204da9b3d65e7b3c44998836ba3d2d9b","src/oldtime.rs":"42f09a5679c8326ba8f0fe068b35ed1066801903c44b2abfd93f00ef5ec62dbc","src/round.rs":"f7ef334fe4d3014b8a6421202b4a50d316d74199ac154ff553548e8c2c58aa80"},"package":"45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"}
\ No newline at end of file
+{"files":{"AUTHORS.txt":"80aa54d9642f63fc62f20f60e0550f3e596de6ea69883769313c7f07a4be8f4c","CHANGELOG.md":"b9d2b2edfb98954c22e3a34c044bbd2f542cae703d06e5cf15245a1e26b32f76","Cargo.toml":"95d58b3f9a862b6bfd497e8aa87cc14ba6a43e7f6d1818094073e611db14ce43","LICENSE.txt":"46610329ff0b38effb9cb05979ff1ef761e465fed96b2eaca39e439d00129fd7","Makefile":"d76b0b1a44e90b31f2a6f97f662d65df585b1dc88253c30c01ea38d9a097a83e","README.md":"8df7579a4ce5ed034b85b91f6f3106573443138dcc568fd76063016ad2d5cc38","appveyor.yml":"b10751e92a0299968ac5cfd65e918d99e680b6ac679362655b92a393cd22c212","ci/fix-readme.sh":"750d262640a6fdc846623a569f37954bfe7604f9bcbc8f7475db38192e1da0fb","ci/travis.sh":"48eb316d163a9c5b37e4b1d4773e2f9934359a3a1dbddc3b6ae6a58ef15856b1","src/date.rs":"c8d61716eaecf8d0e1a887a0ac9bc06d2e5bf0b47eccc61e5683bdeb0f886ff8","src/datetime.rs":"34e71d822cfa70bb6d1041e3d865fcf629ffb2e29021713bd6aee8a3a6d1410f","src/div.rs":"02e6ce9c4fcafcc7931574108dd7ec0cd28b137edb52eaea654a09ab05fbaf90","src/format/mod.rs":"e36b2bee352df7f0addec7365edfd73607ebaa903d3ddb9249f5fe3c11d9da7a","src/format/parse.rs":"8d5b39483c48771932fd75a9d9892967bd7ef6f0c88d55be6a2d35d35ba21f52","src/format/parsed.rs":"a65cbc0ba13190028ca7c4de4a830b8a64acaf375285cae3a1da1bfd6e5d32f8","src/format/scan.rs":"9f8e4ce8001caf9ec76b3eddf7aa9cc5a68606165e3bb53977350c0a03536b79","src/format/strftime.rs":"532f88654cc1531e6ebdea89039bcf2c364e97478c83824f97f1c38277f3c827","src/lib.rs":"1dae4eb3a73db8dc8fd4f5d3e431fc773104a35c9efaa7a301d73f7b898fc464","src/naive/date.rs":"2fbd7069fb576416f2111298cdd59c729e70736abe53d6e69313a4e45f8a6e3d","src/naive/datetime.rs":"5ae4ed07dc199f7f4be27ef18130de385b56dceb01cefafe5e0f0eb9ed39ce7b","src/naive/internals.rs":"db79eda586b7daad5a2645d21bda80ae92f9bee9870d93d2209a7d228e4286c7","src/naive/isoweek.rs":"75101e996e0eccc6f9b2147095d82050e6dac94a741db60f654f4267bbe96fed","src/naive/time.rs":"cfa4936b341246eb0692e0a071d93707f3545825c74aee67749442ecd2aba655","src/offset/fixed.rs":"e0e41c7081e908a8ada1c1bb67fd003f8a36510c542c5088756214e276407cb9","src/offset/local.rs":"c63a88b8ab4af289cef15d04189f9656c8dfcff77fe8417bbd1182b75184f4e6","src/offset/mod.rs":"2aeeb0fa4c657e810f78ff239d7c52f07c33a2b7bdfc8b3765f4339dcafa0088","src/offset/utc.rs":"630f9513f88353892c9f554eed35d5ec204da9b3d65e7b3c44998836ba3d2d9b","src/oldtime.rs":"42f09a5679c8326ba8f0fe068b35ed1066801903c44b2abfd93f00ef5ec62dbc","src/round.rs":"f7ef334fe4d3014b8a6421202b4a50d316d74199ac154ff553548e8c2c58aa80"},"package":"45912881121cb26fad7c38c17ba7daa18764771836b34fab7d3fbd93ed633878"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/chrono/.travis.yml b/rustc_deps/vendor/chrono/.travis.yml
deleted file mode 100644
index d74f342..0000000
--- a/rustc_deps/vendor/chrono/.travis.yml
+++ /dev/null
@@ -1,32 +0,0 @@
-language: rust
-sudo: false
-rust:
-  # 1.13.0 is the earliest version that Serde 1.0 tests, so we follow suit
-  - 1.13.0
-  - stable
-  - beta
-  - nightly
-os:
-  - linux
-  - osx
-matrix:
-  allow_failures:
-    - rust: nightly
-      env: CLIPPY=n
-  include:
-    - rust: nightly
-      env: CLIPPY=y
-
-env:
-  global:
-    - LD_LIBRARY_PATH: /usr/local/lib
-    - CLIPPY: n
-script: ./ci/travis.sh
-notifications:
-  email: false
-  irc:
-    channels:
-      - "irc.mozilla.org#chronotope"
-    template:
-      - "%{repository_slug}/%{branch} (%{commit} - %{author}): %{message}"
-    skip_join: true
diff --git a/rustc_deps/vendor/chunked_transfer/.cargo-checksum.json b/rustc_deps/vendor/chunked_transfer/.cargo-checksum.json
index 470d753..5780d3f 100644
--- a/rustc_deps/vendor/chunked_transfer/.cargo-checksum.json
+++ b/rustc_deps/vendor/chunked_transfer/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"99cfa96f45337fd49675120859902ea5b8800b105ea0be521327e5cf3182876c","Cargo.toml":"6a5bfbc809593831af37fade6f39c91aa7996ed246ec1d697a94acae63e1691f","LICENSE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","README.md":"67d8f5c70060c97f60488f8c121de8feb3821a2536c457a896ebedd9a07910be","src/decoder.rs":"8279d94abf43d2fc1f36b0e531c07593b67ceeeaf0036c09e64233bd0d7a71d6","src/encoder.rs":"12d9e69c1849bfe30e10fca09db5e54e7fa6bc6b043ca898b313146321670e03","src/lib.rs":"c6a860bf2eff377f01d1cd486d530494552a6648de1f09649cd691761e0428b5"},"package":"498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87"}
\ No newline at end of file
+{"files":{"Cargo.toml":"6a5bfbc809593831af37fade6f39c91aa7996ed246ec1d697a94acae63e1691f","LICENSE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","README.md":"67d8f5c70060c97f60488f8c121de8feb3821a2536c457a896ebedd9a07910be","src/decoder.rs":"8279d94abf43d2fc1f36b0e531c07593b67ceeeaf0036c09e64233bd0d7a71d6","src/encoder.rs":"12d9e69c1849bfe30e10fca09db5e54e7fa6bc6b043ca898b313146321670e03","src/lib.rs":"c6a860bf2eff377f01d1cd486d530494552a6648de1f09649cd691761e0428b5"},"package":"498d20a7aaf62625b9bf26e637cf7736417cde1d0c99f1d04d1170229a85cf87"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/chunked_transfer/.travis.yml b/rustc_deps/vendor/chunked_transfer/.travis.yml
deleted file mode 100644
index ec12432..0000000
--- a/rustc_deps/vendor/chunked_transfer/.travis.yml
+++ /dev/null
@@ -1,7 +0,0 @@
-language: rust
-after_success: |
-  cargo doc && \
-  echo '<meta http-equiv=refresh content=0;url=chunked_transfer/index.html>' > target/doc/index.html && \
-  sudo pip install ghp-import && \
-  ghp-import -n target/doc && \
-  git push -qf https://${TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages
diff --git a/rustc_deps/vendor/clap/.appveyor.yml b/rustc_deps/vendor/clap/.appveyor.yml
deleted file mode 100644
index 247a550..0000000
--- a/rustc_deps/vendor/clap/.appveyor.yml
+++ /dev/null
@@ -1,17 +0,0 @@
-environment:
-  matrix:
-  - TARGET: x86_64-pc-windows-msvc
-  - TARGET: i686-pc-windows-msvc
-  - TARGET: x86_64-pc-windows-gnu
-  - TARGET: i686-pc-windows-gnu
-  RUST_BACKTRACE: full
-install:
-  - curl -sSf -o rustup-init.exe https://win.rustup.rs/
-  - rustup-init.exe -y --default-host %TARGET%
-  - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
-  - rustc -vV
-  - cargo -vV
-build: false
-test_script:
-  - cargo build --verbose --features yaml
-  - cargo test --verbose --features yaml
diff --git a/rustc_deps/vendor/clap/.cargo-checksum.json b/rustc_deps/vendor/clap/.cargo-checksum.json
index ced737f..1a5d556 100644
--- a/rustc_deps/vendor/clap/.cargo-checksum.json
+++ b/rustc_deps/vendor/clap/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".appveyor.yml":"38fb7e583271029caad727c9123a2b2679b7c59971de418f16dc5136dbebaeb5",".clog.toml":"f691701bd51b5f311931d0d8f05fa3d78c00dda8d60f3313e21011309c736ff1",".github/CONTRIBUTING.md":"a3e35bb9fd8f5efde128a16175ac8b86847e1de98e4ccd3cbc21ed7c7a0edb4f",".github/ISSUE_TEMPLATE.md":"2b4a85510ae575615123232baa7db63f331c14193621946ff462b530b398d0e7",".mention-bot":"51790ab49f43ed86a4a7c3d2e468aa5fa526ca5e2ac6af20432a2cb5b2fdbe84",".travis.yml":"46a5a865a566558958c252c3e1961f093f0df87c2cc8165f31da39e2e5360229","CHANGELOG.md":"82d98018ed415b62e8d0d971f3f75cb1a2bef55c68cf6e0003f7c0caf9faeb50","CONTRIBUTORS.md":"9b0d3eee116dda23705b732c19b777ebb2b998a6e4554027ae3f61715376b4bc","Cargo.toml":"05f6200c73fa08b82d7e0606194843035c7acb18da9fe29d563c1565d64256b5","LICENSE-MIT":"6725d1437fc6c77301f2ff0e7d52914cf4f9509213e1078dc77d9356dbe6eac5","README.md":"fb69db01448bcbd2d4e51a832d82ca36a074480a80687141219de0a7f6677804","SPONSORS.md":"f8dec21e2cf3f8bff118ad206cd4657950688749085e291e09566914d7a1a1c5","clap-test.rs":"b5ca72dedfe1e71c250c42a01a52a3f5f9ea2bb14d9fe09093e73b71880f79fd","index.html":"36f9ce4465266f3af9a259444b01c4239200473cabfc848f789f75b322a3ea8f","justfile":"811b2dec57aec46e570aeeb9945018cf87fe65f6d5b27cdb9ffca79d906910f6","rustfmt.toml":"8fd2d63119df515fd5f44e530c709b19d66b09fbc2e22a640bf4b64c57e7d6b3","src/app/help.rs":"7758da02684f9e01a4f498982accc5dfa94aebfdc257876ce26a47857202bd5f","src/app/meta.rs":"86f2f871e3d867fd190a8103429b640b77e0caeabb03ad78e7a92f929eeb5582","src/app/mod.rs":"633f0f126a5917285d66e1b19e8153d6939534aabdde02cf5dbf3c2c81446b54","src/app/parser.rs":"75fd0c8e0ebf06531f47fc523a1aa6d19aad6115cb987021bf6c76d25fb315d1","src/app/settings.rs":"31f8d217f12f77705dde33ba5c9293f213cca5d2fdcacd9350ded0b096e1c886","src/app/usage.rs":"b96e80083ea7e6b761b2c018e595400568289d89da59be54adbfaedd6eae5ab7","src/app/validator.rs":"c893fba08fb92ab3c96b41d4a21e3094cf1d4ac7794ddbfd594a158da4c37a18","src/args/any_arg.rs":"e43a208ca10985964975d2c308c8c8156643063951761d8a0d59c3350926c51b","src/args/arg.rs":"d2d97d93dd42bfbc29fd39b89d7a67d76c4f100dc8ade9eb8678bd79a5e88d8f","src/args/arg_builder/base.rs":"49591af68854d3120a20f9f76522f375b3e0ca353abbf7dbe1c142b844e7c29e","src/args/arg_builder/flag.rs":"01045643f07ded517d98ddb6267b5b1b776893f6c74ab6515940f76267448402","src/args/arg_builder/mod.rs":"7a32c8fd85b48f7b60e5f2c13dc70fa9100aa65cd933ba419300d28d682bf722","src/args/arg_builder/option.rs":"e73031991e561ea7e61574f719207034df0fa3acdd28735502d8511f00d7adbf","src/args/arg_builder/positional.rs":"897df6cda52b67728103c7b2c0750f91326880b751204f4ab15852b18be0d929","src/args/arg_builder/switched.rs":"832ef0284a0ceb2da6d03a98f864526a255bf7debfceec47a0018cf78f209dc3","src/args/arg_builder/valued.rs":"20998bf790a58206b27cf8b09f6740812d507336042a2026f203f99af4500ed5","src/args/arg_matcher.rs":"3e2ce8ce09ccc6349b1dcdc609801eb593ed553a2df21e94ac4f50cde3ab1e87","src/args/arg_matches.rs":"bd4fd0ece3e067d7a354d2daf9603295d03024c74d841f73c1537bdd257b1e31","src/args/group.rs":"27ce8153a0f9ec44636936ec9a2f7d01d5cbc53b1bf3a395d3cdfcd4ad5b7ce2","src/args/macros.rs":"57f248e2694f9413cbbaf9087813ed4f27064f5f8e29eaf4ec41ec2b274ae806","src/args/matched_arg.rs":"164abab30c38c61ff05a2a2dd0194d75e3bebda09a839a3f717bc560fc304aa4","src/args/mod.rs":"21d7ddc2ef26f4c6e3b9434a63450235e99cf7143f9d59c447d5ed0fa26cb5d1","src/args/settings.rs":"199c53d550e2090b6290ee77903382cd611b8d78626314d2d3d28281419a09c4","src/args/subcommand.rs":"40d3178fb6f0e9d3dc99959bd45ebe4655f64e7e18145ff7a5e9632ac36b8006","src/completions/bash.rs":"f9b487a5a6b675176309329a47962b95c626b9c8b3e62554c9a117a04c900c1f","src/completions/elvish.rs":"ad5bd2bd82d3ac05b67fce249a45d53eb08de6f5731f7458e6f15db19ef3bb66","src/completions/fish.rs":"6551bd7e73d54211b775ea03fa4adcbddbdcdb3de7a147f325c2848d693476e8","src/completions/macros.rs":"6fed51ae20ed545f2306fab82d4fb7656ef285ccc439284a74cbabd0a6cb88ec","src/completions/mod.rs":"e985c7a9bcb0f4c61e23bc62fba1a68e56a6176437f53fd5a88833358b6067f7","src/completions/powershell.rs":"0fff28a41c9777a8fd8deed1eaba906f23aeda53a38daa888e905bff23db01ce","src/completions/shell.rs":"df5455bc0616f76f83034002d9df47ce16d4090ed5fccc3c0ae182d0f0c5504c","src/completions/zsh.rs":"7c339fa96f4a39e1e33a0053662fba30a030a7692c092e4a0831c1ed7d5d6f53","src/errors.rs":"39d6192b012a8cbebf7220ef74144c9e8d3d9d342720af5d2e76a5af9c601439","src/fmt.rs":"7afbd78efba9936a1c776e86c65207b8bdff7bdb2d62b5d042b39f477b843bd1","src/lib.rs":"7af78443540ae53912985e65b6a279c4eeced5b051bf09ea83fd956249c37af3","src/macros.rs":"2aefd4c9223c7224385d4fb619cf084fa181b28b3f5c3173eef75cb0ac82e927","src/map.rs":"10c57678b453673aa2d78f72de2d44510271eb2f9771a8d203952353581318a8","src/osstringext.rs":"40a09d5bc42906fe284ded5741cbdece596b09b3aba747580d53d0e3e7d368ed","src/strext.rs":"d4418d396069e9c05804f92c042ba7192a4244e46059e2edc98670b45cd2daee","src/suggestions.rs":"aaf08a30ab8594f415ee0a376596f668c5e2ba4ee6ab3c312239f4cbad6d5930","src/usage_parser.rs":"5dda6ef41b4c3773ab461ac7150fbdcc58ecbda7751723a0848fcb95a4312cb2"},"package":"b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"82d98018ed415b62e8d0d971f3f75cb1a2bef55c68cf6e0003f7c0caf9faeb50","CONTRIBUTORS.md":"9b0d3eee116dda23705b732c19b777ebb2b998a6e4554027ae3f61715376b4bc","Cargo.toml":"05f6200c73fa08b82d7e0606194843035c7acb18da9fe29d563c1565d64256b5","LICENSE-MIT":"6725d1437fc6c77301f2ff0e7d52914cf4f9509213e1078dc77d9356dbe6eac5","README.md":"fb69db01448bcbd2d4e51a832d82ca36a074480a80687141219de0a7f6677804","SPONSORS.md":"f8dec21e2cf3f8bff118ad206cd4657950688749085e291e09566914d7a1a1c5","clap-test.rs":"b5ca72dedfe1e71c250c42a01a52a3f5f9ea2bb14d9fe09093e73b71880f79fd","index.html":"36f9ce4465266f3af9a259444b01c4239200473cabfc848f789f75b322a3ea8f","justfile":"811b2dec57aec46e570aeeb9945018cf87fe65f6d5b27cdb9ffca79d906910f6","rustfmt.toml":"8fd2d63119df515fd5f44e530c709b19d66b09fbc2e22a640bf4b64c57e7d6b3","src/app/help.rs":"7758da02684f9e01a4f498982accc5dfa94aebfdc257876ce26a47857202bd5f","src/app/meta.rs":"86f2f871e3d867fd190a8103429b640b77e0caeabb03ad78e7a92f929eeb5582","src/app/mod.rs":"633f0f126a5917285d66e1b19e8153d6939534aabdde02cf5dbf3c2c81446b54","src/app/parser.rs":"75fd0c8e0ebf06531f47fc523a1aa6d19aad6115cb987021bf6c76d25fb315d1","src/app/settings.rs":"31f8d217f12f77705dde33ba5c9293f213cca5d2fdcacd9350ded0b096e1c886","src/app/usage.rs":"b96e80083ea7e6b761b2c018e595400568289d89da59be54adbfaedd6eae5ab7","src/app/validator.rs":"c893fba08fb92ab3c96b41d4a21e3094cf1d4ac7794ddbfd594a158da4c37a18","src/args/any_arg.rs":"e43a208ca10985964975d2c308c8c8156643063951761d8a0d59c3350926c51b","src/args/arg.rs":"d2d97d93dd42bfbc29fd39b89d7a67d76c4f100dc8ade9eb8678bd79a5e88d8f","src/args/arg_builder/base.rs":"49591af68854d3120a20f9f76522f375b3e0ca353abbf7dbe1c142b844e7c29e","src/args/arg_builder/flag.rs":"01045643f07ded517d98ddb6267b5b1b776893f6c74ab6515940f76267448402","src/args/arg_builder/mod.rs":"7a32c8fd85b48f7b60e5f2c13dc70fa9100aa65cd933ba419300d28d682bf722","src/args/arg_builder/option.rs":"e73031991e561ea7e61574f719207034df0fa3acdd28735502d8511f00d7adbf","src/args/arg_builder/positional.rs":"897df6cda52b67728103c7b2c0750f91326880b751204f4ab15852b18be0d929","src/args/arg_builder/switched.rs":"832ef0284a0ceb2da6d03a98f864526a255bf7debfceec47a0018cf78f209dc3","src/args/arg_builder/valued.rs":"20998bf790a58206b27cf8b09f6740812d507336042a2026f203f99af4500ed5","src/args/arg_matcher.rs":"3e2ce8ce09ccc6349b1dcdc609801eb593ed553a2df21e94ac4f50cde3ab1e87","src/args/arg_matches.rs":"bd4fd0ece3e067d7a354d2daf9603295d03024c74d841f73c1537bdd257b1e31","src/args/group.rs":"27ce8153a0f9ec44636936ec9a2f7d01d5cbc53b1bf3a395d3cdfcd4ad5b7ce2","src/args/macros.rs":"57f248e2694f9413cbbaf9087813ed4f27064f5f8e29eaf4ec41ec2b274ae806","src/args/matched_arg.rs":"164abab30c38c61ff05a2a2dd0194d75e3bebda09a839a3f717bc560fc304aa4","src/args/mod.rs":"21d7ddc2ef26f4c6e3b9434a63450235e99cf7143f9d59c447d5ed0fa26cb5d1","src/args/settings.rs":"199c53d550e2090b6290ee77903382cd611b8d78626314d2d3d28281419a09c4","src/args/subcommand.rs":"40d3178fb6f0e9d3dc99959bd45ebe4655f64e7e18145ff7a5e9632ac36b8006","src/completions/bash.rs":"f9b487a5a6b675176309329a47962b95c626b9c8b3e62554c9a117a04c900c1f","src/completions/elvish.rs":"ad5bd2bd82d3ac05b67fce249a45d53eb08de6f5731f7458e6f15db19ef3bb66","src/completions/fish.rs":"6551bd7e73d54211b775ea03fa4adcbddbdcdb3de7a147f325c2848d693476e8","src/completions/macros.rs":"6fed51ae20ed545f2306fab82d4fb7656ef285ccc439284a74cbabd0a6cb88ec","src/completions/mod.rs":"e985c7a9bcb0f4c61e23bc62fba1a68e56a6176437f53fd5a88833358b6067f7","src/completions/powershell.rs":"0fff28a41c9777a8fd8deed1eaba906f23aeda53a38daa888e905bff23db01ce","src/completions/shell.rs":"df5455bc0616f76f83034002d9df47ce16d4090ed5fccc3c0ae182d0f0c5504c","src/completions/zsh.rs":"7c339fa96f4a39e1e33a0053662fba30a030a7692c092e4a0831c1ed7d5d6f53","src/errors.rs":"39d6192b012a8cbebf7220ef74144c9e8d3d9d342720af5d2e76a5af9c601439","src/fmt.rs":"7afbd78efba9936a1c776e86c65207b8bdff7bdb2d62b5d042b39f477b843bd1","src/lib.rs":"7af78443540ae53912985e65b6a279c4eeced5b051bf09ea83fd956249c37af3","src/macros.rs":"2aefd4c9223c7224385d4fb619cf084fa181b28b3f5c3173eef75cb0ac82e927","src/map.rs":"10c57678b453673aa2d78f72de2d44510271eb2f9771a8d203952353581318a8","src/osstringext.rs":"40a09d5bc42906fe284ded5741cbdece596b09b3aba747580d53d0e3e7d368ed","src/strext.rs":"d4418d396069e9c05804f92c042ba7192a4244e46059e2edc98670b45cd2daee","src/suggestions.rs":"aaf08a30ab8594f415ee0a376596f668c5e2ba4ee6ab3c312239f4cbad6d5930","src/usage_parser.rs":"5dda6ef41b4c3773ab461ac7150fbdcc58ecbda7751723a0848fcb95a4312cb2"},"package":"b957d88f4b6a63b9d70d5f454ac8011819c6efa7727858f458ab71c756ce2d3e"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/clap/.clog.toml b/rustc_deps/vendor/clap/.clog.toml
deleted file mode 100644
index 5a62fa4..0000000
--- a/rustc_deps/vendor/clap/.clog.toml
+++ /dev/null
@@ -1,13 +0,0 @@
-[clog]
-repository = "https://github.com/kbknapp/clap-rs"
-outfile = "CHANGELOG.md"
-from-latest-tag = true
-
-[sections]
-Performance = ["perf"]
-Improvements = ["impr", "im", "imp"]
-Documentation = ["docs"]
-Deprecations = ["depr"]
-Examples = ["examples"]
-"New Settings" = ["setting", "settings"]
-"API Additions" = ["add", "api"]
diff --git a/rustc_deps/vendor/clap/.github/CONTRIBUTING.md b/rustc_deps/vendor/clap/.github/CONTRIBUTING.md
deleted file mode 100644
index 2c6f752..0000000
--- a/rustc_deps/vendor/clap/.github/CONTRIBUTING.md
+++ /dev/null
@@ -1,115 +0,0 @@
-# How to Contribute
-
-Contributions are always welcome! And there is a multitude of ways in which you can help depending on what you like to do, or are good at. Anything from documentation, code cleanup, issue completion, new features, you name it, even filing issues is contributing and greatly appreciated!
-
-Another really great way to help is if you find an interesting, or helpful way in which to use `clap`. You can either add it to the [examples/](examples) directory, or file an issue and tell me. I'm all about giving credit where credit is due :)
-
-### Testing Code
-
-To test with all features both enabled and disabled, you can run these commands:
-
-```sh
-$ cargo test --no-default-features
-$ cargo test --features "yaml unstable"
-```
-
-Alternatively, if you have [`just`](https://github.com/casey/just) installed you can run the prebuilt recipes. *Not* using `just` is perfectly fine as well, it simply bundles commands automatically.
-
-For example, to test the code, as above simply run:
-
-```sh
-$ just run-tests
-```
-
-From here on, I will list the appropriate `cargo` command as well as the `just` command.
-
-Sometimes it's helpful to only run a subset of the tests, which can be done via:
-
-```sh
-$ cargo test --test <test_name>
-
-# Or
-
-$ just run-test <test_name>
-```
-
-### Linting Code
-
-During the CI process `clap` runs against many different lints using [`clippy`](https://github.com/rust-lang-nursery/rust-clippy). In order to check if these lints pass on your own computer prior to submitting a PR you'll need a nightly compiler.
-
-In order to check the code for lints run either:
-
-```sh
-$ rustup override add nightly
-$ cargo build --features lints
-$ rustup override remove
-
-# Or
-
-$ just lint
-```
-
-### Debugging Code
-
-Another helpful technique is to see the `clap` debug output while developing features. In order to see the debug output while running the full test suite or individual tests, run:
-
-```sh
-$ cargo test --features debug
-
-# Or for individual tests
-$ cargo test --test <test_name> --features debug
-
-# The corresponding just command for individual debugging tests is:
-$ just debug <test_name>
-```
-
-### Commit Messages
-
-I use a [conventional](https://github.com/ajoslin/conventional-changelog/blob/a5505865ff3dd710cf757f50530e73ef0ca641da/conventions/angular.md) changelog format so I can update my changelog automatically using [clog](https://github.com/clog-tool/clog-cli)
-
- * Please format your commit subject line using the following format: `TYPE(COMPONENT): MESSAGE` where `TYPE` is one of the following:
-    - `api`  - An addition to the API
-    - `setting` - A new `AppSettings` variant
-    - `feat` - A new feature of an existing API
-    - `imp`  - An improvement to an existing feature/API
-    - `perf` - A performance improvement
-    - `docs` - Changes to documentation only
-    - `tests` - Changes to the testing framework or tests only
-    - `fix` - A bug fix
-    - `refactor` - Code functionality doesn't change, but underlying structure may
-    - `style` - Stylistic changes only, no functionality changes
-    - `wip` - A work in progress commit (Should typically be `git rebase`'ed away)
-    - `chore` - Catch all or things that have to do with the build system, etc
-    - `examples` - Changes to existing example, or a new example
- * The `COMPONENT` is optional, and may be a single file, directory, or logical component. Parenthesis can be omitted if you are opting not to use the `COMPONENT`. 
-
-### Tests and Documentation
-
-1. Create tests for your changes
-2. **Ensure the tests are passing.** Run the tests (`cargo test --features "yaml unstable"`), alternatively `just run-tests` if you have `just` installed.
-3. **Optional** Run the lints (`cargo build --features lints`) (requires a nightly compiler), alternatively `just lint`
-4. Ensure your changes contain documentation if adding new APIs or features.
-
-### Preparing the PR
-
-1. `git rebase` into concise commits and remove `--fixup`s or `wip` commits (`git rebase -i HEAD~NUM` where `NUM` is number of commits back to start the rebase)
-2. Push your changes back to your fork (`git push origin $your-branch`)
-3. Create a pull request against `master`! (You can also create the pull request first, and we'll merge when ready. This a good way to discuss proposed changes.)
-
-### Other ways to contribute
-
-Another really great way to help is if you find an interesting, or helpful way in which to use `clap`. You can either add it to the [examples/](../examples) directory, or file an issue and tell me. I'm all about giving credit where credit is due :)
-
-### Goals
-
-There are a few goals of `clap` that I'd like to maintain throughout contributions. If your proposed changes break, or go against any of these goals we'll discuss the changes further before merging (but will *not* be ignored, all contributes are welcome!). These are by no means hard-and-fast rules, as I'm no expert and break them myself from time to time (even if by mistake or ignorance :P).
-
-* Remain backwards compatible when possible
-  - If backwards compatibility *must* be broken, use deprecation warnings if at all possible before removing legacy code
-  - This does not apply for security concerns
-* Parse arguments quickly
-  - Parsing of arguments shouldn't slow down usage of the main program
-  - This is also true of generating help and usage information (although *slightly* less stringent, as the program is about to exit)
-* Try to be cognizant of memory usage
-  - Once parsing is complete, the memory footprint of `clap` should be low since the  main program is the star of the show
-* `panic!` on *developer* error, exit gracefully on *end-user* error
diff --git a/rustc_deps/vendor/clap/.github/ISSUE_TEMPLATE.md b/rustc_deps/vendor/clap/.github/ISSUE_TEMPLATE.md
deleted file mode 100644
index 5f94a2c..0000000
--- a/rustc_deps/vendor/clap/.github/ISSUE_TEMPLATE.md
+++ /dev/null
@@ -1,46 +0,0 @@
-<!--
-Please use the following template to assist with creating an issue and to ensure a speedy resolution. If an area is not applicable, feel free to delete the area or mark with `N/A`
--->
-
-### Rust Version
-
-* Use the output of `rustc -V`
-
-### Affected Version of clap
-
-* Can be found in Cargo.lock of your project (i.e. `grep clap Cargo.lock`)
-
-### Bug or Feature Request Summary
-
-
-### Expected Behavior Summary
-
-
-### Actual Behavior Summary
-
-
-### Steps to Reproduce the issue
-
-
-### Sample Code or Link to Sample Code
-
-
-### Debug output
-
-Compile clap with cargo features `"debug"` such as:
-
-```toml
-[dependencies]
-clap = { version = "2", features = ["debug"] }
-```
-
-<details>
-<summary> Debug Output </summary>
-<pre>
-<code>
-
-Paste Debug Output Here
-
-</code>
-</pre>
-</details>
diff --git a/rustc_deps/vendor/clap/.mention-bot b/rustc_deps/vendor/clap/.mention-bot
deleted file mode 100644
index f339f59..0000000
--- a/rustc_deps/vendor/clap/.mention-bot
+++ /dev/null
@@ -1,9 +0,0 @@
-{
-  "findPotentialReviewers": false, 
-  "alwaysNotifyForPaths": [
-    {
-      "name": "kbknapp", 
-      "files": ["**/*.rs", "**/*.md", "*"] 
-    }
-  ]
-}
diff --git a/rustc_deps/vendor/clap/.travis.yml b/rustc_deps/vendor/clap/.travis.yml
deleted file mode 100644
index 3cdb123..0000000
--- a/rustc_deps/vendor/clap/.travis.yml
+++ /dev/null
@@ -1,60 +0,0 @@
-sudo: true
-language: rust
-cache: cargo
-rust:
-  - nightly
-  - nightly-2018-06-19
-  - beta
-  - stable
-  - 1.21.0
-matrix:
-    allow_failures:
-        - rust: nightly
-before_script:
-  - |
-    pip install git+git://github.com/kbknapp/travis-cargo.git --user &&
-    export PATH=$HOME/.local/bin:$PATH
-  - |
-    if [[ "$TRAVIS_RUST_VERSION" == "1.13.0" ]]; then
-        echo "Old Rust detected, removing version-sync dependency"
-        sed -i "/^version-sync =/d" Cargo.toml
-        rm "tests/version-numbers.rs"
-    fi
-script:
-  - |
-    travis-cargo --only stable test -- --verbose --no-default-features &&
-    travis-cargo --skip nightly test -- --verbose --features "yaml unstable" &&
-    travis-cargo --only nightly test -- --verbose --features "yaml unstable nightly" &&
-    travis-cargo --only nightly bench -- --no-run 
-addons:
-  apt:
-    packages:
-    - binutils-dev 
-    - libcurl4-openssl-dev
-    - libelf-dev
-    - libdw-dev
-    - libiberty-dev
-    - cmake
-    - gcc
-    - zlib1g-dev 
-after_success:
-  - |
-    wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz &&
-    tar xzf master.tar.gz &&
-    cd kcov-master &&
-    mkdir build &&
-    cd build &&
-    cmake .. &&
-    make &&
-    sudo make install &&
-    cd ../.. &&
-    rm -rf kcov-master &&
-    cargo clean &&
-    cargo test --no-run --features "yaml unstable" &&
-    for file in target/debug/*-*; do mkdir -p "target/cov/$(basename $file)"; kcov --exclude-pattern=/.cargo --verify "target/cov/$(basename $file)" "$file"; done &&
-    kcov --coveralls-id=$TRAVIS_JOB_ID --merge target/cov target/cov/* &&
-    echo "Uploaded code coverage"
-env:
-  global:
-    - TRAVIS_CARGO_NIGHTLY_FEATURE=lints
-    - secure: JLBlgHY6OEmhJ8woewNJHmuBokTNUv7/WvLkJGV8xk0t6bXBwSU0jNloXwlH7FiQTc4TccX0PumPDD4MrMgxIAVFPmmmlQOCmdpYP4tqZJ8xo189E5zk8lKF5OyaVYCs5SMmFC3cxCsKjfwGIexNu3ck5Uhwe9jI0tqgkgM3URA=
diff --git a/rustc_deps/vendor/crc/.cargo-checksum.json b/rustc_deps/vendor/crc/.cargo-checksum.json
index 97306ce..1ab2c34 100644
--- a/rustc_deps/vendor/crc/.cargo-checksum.json
+++ b/rustc_deps/vendor/crc/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"ad9cdfee6e8874c60215726e7376df90f4e090ea380c1a5b35e060374f4fc10d","Cargo.toml":"6c769d8d6909a8ce7e1d6e5cd3a6867849bd369eef332f67b4683c7788de8793","LICENSE-APACHE":"470355a7eed93fcc4281ec2e0f82ca3b94e7af1e4d83629f91de8cfac34d750e","LICENSE-MIT":"3488679340a49ecc34d342c4009d2dabf76f4a21f12aec2ca99b15805d656544","README.md":"1be69fa3aedd3ce9e25a13e5e457cb6f310ef1473acd17e1f10e6821cfc1b579","benches/bench.rs":"6e129032ad3c596840d0a88f369b0a86efe560b2da9c6db338e80e17876741e5","build.rs":"c5935e7aa7e6c2a4df4f34d8aedde786c24be02ddb5ede8b1125b9a108c92e80","src/crc16.rs":"b50e797e592c51482f19b413fc7f5b6e533fc34c550f3b93b769fdfbf52e809d","src/crc32.rs":"509b3b4138521c8481863a0a8421f6ffccf97d1aa9a7cd5c9221b7ebda26da66","src/crc64.rs":"fd59ca0336d798bc4b14224858ca27ce372274f21951950b38eacf36c59bd863","src/lib.rs":"8e84d94767283cb13d56ca4fd5b0aa4b8284e8dd3e97667b06af912d58db328c","src/util.rs":"805670b0d8ebe191d36ae67d105490c106581e61d89777b1afffc39efbecd3c5","tests/crc.rs":"92c8d0bb3fbb914e7832270e5a8f6d32e7b047e952bb76c21de0919b43184fd7","tests/hash.rs":"d3b314a4e50dd7669c603c0c2fdc51c47f04293c0747406dbe79c0f72a58be7d"},"package":"d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"}
\ No newline at end of file
+{"files":{"Cargo.toml":"6c769d8d6909a8ce7e1d6e5cd3a6867849bd369eef332f67b4683c7788de8793","LICENSE-APACHE":"470355a7eed93fcc4281ec2e0f82ca3b94e7af1e4d83629f91de8cfac34d750e","LICENSE-MIT":"3488679340a49ecc34d342c4009d2dabf76f4a21f12aec2ca99b15805d656544","README.md":"1be69fa3aedd3ce9e25a13e5e457cb6f310ef1473acd17e1f10e6821cfc1b579","benches/bench.rs":"6e129032ad3c596840d0a88f369b0a86efe560b2da9c6db338e80e17876741e5","build.rs":"c5935e7aa7e6c2a4df4f34d8aedde786c24be02ddb5ede8b1125b9a108c92e80","src/crc16.rs":"b50e797e592c51482f19b413fc7f5b6e533fc34c550f3b93b769fdfbf52e809d","src/crc32.rs":"509b3b4138521c8481863a0a8421f6ffccf97d1aa9a7cd5c9221b7ebda26da66","src/crc64.rs":"fd59ca0336d798bc4b14224858ca27ce372274f21951950b38eacf36c59bd863","src/lib.rs":"8e84d94767283cb13d56ca4fd5b0aa4b8284e8dd3e97667b06af912d58db328c","src/util.rs":"805670b0d8ebe191d36ae67d105490c106581e61d89777b1afffc39efbecd3c5","tests/crc.rs":"92c8d0bb3fbb914e7832270e5a8f6d32e7b047e952bb76c21de0919b43184fd7","tests/hash.rs":"d3b314a4e50dd7669c603c0c2fdc51c47f04293c0747406dbe79c0f72a58be7d"},"package":"d663548de7f5cca343f1e0a48d14dcfb0e9eb4e079ec58883b7251539fa10aeb"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/crc/.travis.yml b/rustc_deps/vendor/crc/.travis.yml
deleted file mode 100644
index 738677e..0000000
--- a/rustc_deps/vendor/crc/.travis.yml
+++ /dev/null
@@ -1,4 +0,0 @@
-language: rust
-rust:
-    - nightly
-    - stable
diff --git a/rustc_deps/vendor/crossbeam/.cargo-checksum.json b/rustc_deps/vendor/crossbeam/.cargo-checksum.json
index 243f37a..062e16a 100644
--- a/rustc_deps/vendor/crossbeam/.cargo-checksum.json
+++ b/rustc_deps/vendor/crossbeam/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"5c1a66c2f3f70d7a6fd7ee40b87863d95b78294244cc037453220d64fc431362","CHANGELOG.md":"a064061f90192e227cc3291dd61e14d77b93b66da16cfbc9c9cdd1b6877984e7","Cargo.toml":"c2d5efb9e1f8ecd4d772d06f3a1d4d994263ecb15799340ad6504a0661af2f3a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7b63ecd5f1902af1b63729947373683c32745c16a10e8e6292e2e2dcd7e90ae0","README.md":"07555de06b04dd127455cfecf02c57a82de42f7043e3e4df8cd9e49c523a9216","src/bin/bench.rs":"8a20b1a9df2f9795160fdc12aaa24141f91773061747f69e62797c1e42ec48f8","src/bin/extra_impls/mod.rs":"b72e67187cbfc1672faacd7d906604f3adc0c7540c781db88c6f4f1726229db9","src/bin/extra_impls/mpsc_queue.rs":"94551cbe0075c40472bae74cb500070c5c621e3690e15c1374b56c5cb7dd6639","src/bin/stress-msq.rs":"f49ba9adb0308013dbd7ed748572659c8b25d045e20609a21ed29ce35784f8f7","src/cache_padded.rs":"9d6c947d710774c5732204234e03699c93594b1651b65779d941612e168bde58","src/epoch/atomic.rs":"ec73c5e271b6b16bc489d3a6b47a48c5ef21cd1d8320d5ed01a6cac271afb42a","src/epoch/garbage.rs":"d8ce282b10fb2b05b9296a8ea25a06329f62164afde9ce099c31325eee81b1d1","src/epoch/global.rs":"75c805dfd4c97f5df5e33c9eaeeb939b56038d97f55aa158b68d22e2eb66b8d3","src/epoch/guard.rs":"36b50440665c2ae5159305673a66c7c879d050112887e0f895ed4d5618b009ea","src/epoch/local.rs":"61a01f1fefe03a74ba8e8cf5219251fa7d0aaaf9fcb914c864e84d1c1eb133bb","src/epoch/mod.rs":"4eb0bd23238451ac71a4e9c5ebce803e7e2812472988dc3ff25ac37a0b120ffc","src/epoch/participant.rs":"a4f43475bc1b5dd8b2a4d04ba8309d273968f88cfb50622c5ffbd2651d06e405","src/epoch/participants.rs":"557de71e0ef621af18da309fb5a3e49b8d94c4d34e7aba50af64964277967b50","src/lib.rs":"1d3c207f21f91c1b3b994e3ba442511b382dccea384c176df905529614bd24db","src/scoped.rs":"f22cb07df423b793eb7926188c36692fa900ff31abe54121d1d3b2703e47b564","src/sync/arc_cell.rs":"d12dcaca3d59cb0a7c34470dff60c11cb8e25ecde87baf3940bd0747bb107672","src/sync/atomic_option.rs":"32ae3979951d08b1b760048ed1794f33324ace9bedd5d9ac64de09e4b39e7c70","src/sync/chase_lev.rs":"7fa91ea0d7486c1771b8011665b8f3d0e29b7ebc90037a4a2ae5565e2a2c058c","src/sync/mod.rs":"35e5f793530e198e891e6ef619da161bbcd31a1de1419dc5b9e9a954d3542c02","src/sync/ms_queue.rs":"bb8c849c37bef65795ce355add3177aaa7fbed106cbcece8f8c3c4cf2567df77","src/sync/seg_queue.rs":"d522e6c311c7798fd266539879f6cc42cf8ae1ff5068649bad6aada24820b0aa","src/sync/treiber_stack.rs":"0e4e360c89efaf0f1d7d5880cd3cbb79bdb243f16afb4ebb7d33c4efa5d92b85"},"package":"24ce9782d4d5c53674646a6a4c1863a21a8fc0cb649b3c94dfc16e45071dea19"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"a064061f90192e227cc3291dd61e14d77b93b66da16cfbc9c9cdd1b6877984e7","Cargo.toml":"c2d5efb9e1f8ecd4d772d06f3a1d4d994263ecb15799340ad6504a0661af2f3a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7b63ecd5f1902af1b63729947373683c32745c16a10e8e6292e2e2dcd7e90ae0","README.md":"07555de06b04dd127455cfecf02c57a82de42f7043e3e4df8cd9e49c523a9216","src/bin/bench.rs":"8a20b1a9df2f9795160fdc12aaa24141f91773061747f69e62797c1e42ec48f8","src/bin/extra_impls/mod.rs":"b72e67187cbfc1672faacd7d906604f3adc0c7540c781db88c6f4f1726229db9","src/bin/extra_impls/mpsc_queue.rs":"94551cbe0075c40472bae74cb500070c5c621e3690e15c1374b56c5cb7dd6639","src/bin/stress-msq.rs":"f49ba9adb0308013dbd7ed748572659c8b25d045e20609a21ed29ce35784f8f7","src/cache_padded.rs":"9d6c947d710774c5732204234e03699c93594b1651b65779d941612e168bde58","src/epoch/atomic.rs":"ec73c5e271b6b16bc489d3a6b47a48c5ef21cd1d8320d5ed01a6cac271afb42a","src/epoch/garbage.rs":"d8ce282b10fb2b05b9296a8ea25a06329f62164afde9ce099c31325eee81b1d1","src/epoch/global.rs":"75c805dfd4c97f5df5e33c9eaeeb939b56038d97f55aa158b68d22e2eb66b8d3","src/epoch/guard.rs":"36b50440665c2ae5159305673a66c7c879d050112887e0f895ed4d5618b009ea","src/epoch/local.rs":"61a01f1fefe03a74ba8e8cf5219251fa7d0aaaf9fcb914c864e84d1c1eb133bb","src/epoch/mod.rs":"4eb0bd23238451ac71a4e9c5ebce803e7e2812472988dc3ff25ac37a0b120ffc","src/epoch/participant.rs":"a4f43475bc1b5dd8b2a4d04ba8309d273968f88cfb50622c5ffbd2651d06e405","src/epoch/participants.rs":"557de71e0ef621af18da309fb5a3e49b8d94c4d34e7aba50af64964277967b50","src/lib.rs":"1d3c207f21f91c1b3b994e3ba442511b382dccea384c176df905529614bd24db","src/scoped.rs":"f22cb07df423b793eb7926188c36692fa900ff31abe54121d1d3b2703e47b564","src/sync/arc_cell.rs":"d12dcaca3d59cb0a7c34470dff60c11cb8e25ecde87baf3940bd0747bb107672","src/sync/atomic_option.rs":"32ae3979951d08b1b760048ed1794f33324ace9bedd5d9ac64de09e4b39e7c70","src/sync/chase_lev.rs":"7fa91ea0d7486c1771b8011665b8f3d0e29b7ebc90037a4a2ae5565e2a2c058c","src/sync/mod.rs":"35e5f793530e198e891e6ef619da161bbcd31a1de1419dc5b9e9a954d3542c02","src/sync/ms_queue.rs":"bb8c849c37bef65795ce355add3177aaa7fbed106cbcece8f8c3c4cf2567df77","src/sync/seg_queue.rs":"d522e6c311c7798fd266539879f6cc42cf8ae1ff5068649bad6aada24820b0aa","src/sync/treiber_stack.rs":"0e4e360c89efaf0f1d7d5880cd3cbb79bdb243f16afb4ebb7d33c4efa5d92b85"},"package":"24ce9782d4d5c53674646a6a4c1863a21a8fc0cb649b3c94dfc16e45071dea19"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/crossbeam/.travis.yml b/rustc_deps/vendor/crossbeam/.travis.yml
deleted file mode 100644
index 7e692ba..0000000
--- a/rustc_deps/vendor/crossbeam/.travis.yml
+++ /dev/null
@@ -1,36 +0,0 @@
-language: rust
-# necessary for `travis-cargo coveralls --no-sudo`
-addons:
-  apt:
-    packages:
-      - libcurl4-openssl-dev
-      - libelf-dev
-      - libdw-dev
-
-# run builds for all the trains (and more)
-rust:
-  - nightly
-  - beta
-  - stable
-
-# load travis-cargo
-before_script:
-  - |
-      pip install 'travis-cargo<0.2' --user &&
-      export PATH=$HOME/.local/bin:$PATH
-
-# the main build
-script:
-  - |
-      travis-cargo build &&
-      travis-cargo test &&
-      travis-cargo test -- --release &&
-      travis-cargo run -- --bin bench --release &&
-      travis-cargo --only stable doc
-env:
-  global:
-    # override the default `--features unstable` used for the nightly branch (optional)
-    - TRAVIS_CARGO_NIGHTLY_FEATURE=nightly
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/deflate/.cargo-checksum.json b/rustc_deps/vendor/deflate/.cargo-checksum.json
index 629da05..13defa4 100644
--- a/rustc_deps/vendor/deflate/.cargo-checksum.json
+++ b/rustc_deps/vendor/deflate/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"d07bce5a5ea5091f7b455c5dd68a90a861e2962e55fc1a700f68cf0ff39393ba","Cargo.toml":"ba0979bf6868b2b4a594a1be47d1fdb06642211a7121b96a0cd970656a66f95a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"852bcc033a46c62f99fb5ffd43b3241ba2c0c440c6034aa2114505f2c4f03c4a","README.md":"afc40bab6e3348166722e5289ea4bb7e14963f4899fa43b48c9678f76d411159","benches/bench.rs":"44b6b78722a0172db48de9e72e12826c2f42f943e2ba20b0e7417e94e435abfa","src/bit_reverse.rs":"0c5fe0a6fbd01d36b30d53d0215208aee1e6bdf6e02f66ffe149ca3c0c67071f","src/bitstream.rs":"28fede10cbd3df8c6cde95fe3d32ef13bc1bcc32c705f78ca8776a4a147dd92b","src/chained_hash_table.rs":"3320ec33c248f9e0e48305e1ce7670dce59144fd953aabd82d85ed2e615ad14a","src/checksum.rs":"ae0e377695d99a8148f642eec35fa5db675e42abdfe98b57f95553bbd929ad72","src/compress.rs":"3f0789147cab670ab6df25e4e5d6f7c6d984fef32c5a25d110d54170f595a1fd","src/compression_options.rs":"49be16c285cb82ad40df9786847786ce3e9d42aec64c6ec8983ca2862da5dee6","src/deflate_state.rs":"7906c6cb8e82c57fbb730e0b7bfc0e6f58960b6a604ae8d17698c4345a0b1d0a","src/encoder_state.rs":"789f88e95661344d7fcc35807d7e71fd92daca418108f817c70bb3bd3000e17f","src/huffman_lengths.rs":"710190944b5306acb81566d9651c2d4e71f72ae92a702a892d2a0adbd78a41c9","src/huffman_table.rs":"582e8d98b7cea85a9861ef7628db0092493161466172d2fcc189f491a5150602","src/input_buffer.rs":"b5dd88c451e6337b081a008b2f5e1b24cd8505a49e96cf362e0e663dcac02f34","src/length_encode.rs":"87d253a168a72583b24ea2514599bcd0d51d5f3dab7272c9d8975ed9ce8aae4f","src/lib.rs":"b48f779d0b164bf66d091da5b5fef8b9598844e24ad3923f18dc15594e9c315e","src/lz77.rs":"b248c03a32e6115fd96edae38329918c970c658a2d100d2d88ef63015e5a7916","src/lzvalue.rs":"c439ca085bf393e054c725d6deda25a3acf83cf4548c940a1490b0574e481180","src/matching.rs":"20cb9d3cb05b2d274dfd19a66975fd9977b6918b213822de5939c7229427686e","src/output_writer.rs":"d5b28ef0d2745e832f47919f90dcf8e19259dce6239f3c7231c138b483467a2c","src/rle.rs":"6f0beb34ab96e0ecb41bb0d651a1e532df8460e5445eb39a4c1a7d48fa0b87d7","src/stored_block.rs":"a7c0c1c7386e7f3f4673f86dbdade6fc4a8a81d4c39a5d356856598989787b90","src/test_utils.rs":"80cd5a7fb04f1c97e0c6b5baacba8bfec6a0b77ad9861fc988df1ae936aa017f","src/writer.rs":"80ff47a68d9df6584511a60e550f80dc08ce59c9d0e97e12f1044f3d6b347220","src/zlib.rs":"005f6740ee80a85859811fb0b7da77a6dc7226745a027c6355f3051358b7a34e","tests/pg11.txt":"fbcaee1f2df4c5ec08aa77ff87eebf808851842aca5bccb40bf6673461ec2e97","tests/short.bin":"861e11f5d8dd18db9ad837a3d3308b672347456c4ae5054b1d2baef7205cbe9d","tests/test.rs":"c51379461c370e5149ef409f83daceb829261507ef17391c7d2d99b3fb356904"},"package":"8a6abb26e16e8d419b5c78662aa9f82857c2386a073da266840e474d5055ec86"}
\ No newline at end of file
+{"files":{"Cargo.toml":"ba0979bf6868b2b4a594a1be47d1fdb06642211a7121b96a0cd970656a66f95a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"852bcc033a46c62f99fb5ffd43b3241ba2c0c440c6034aa2114505f2c4f03c4a","README.md":"afc40bab6e3348166722e5289ea4bb7e14963f4899fa43b48c9678f76d411159","benches/bench.rs":"44b6b78722a0172db48de9e72e12826c2f42f943e2ba20b0e7417e94e435abfa","src/bit_reverse.rs":"0c5fe0a6fbd01d36b30d53d0215208aee1e6bdf6e02f66ffe149ca3c0c67071f","src/bitstream.rs":"28fede10cbd3df8c6cde95fe3d32ef13bc1bcc32c705f78ca8776a4a147dd92b","src/chained_hash_table.rs":"3320ec33c248f9e0e48305e1ce7670dce59144fd953aabd82d85ed2e615ad14a","src/checksum.rs":"ae0e377695d99a8148f642eec35fa5db675e42abdfe98b57f95553bbd929ad72","src/compress.rs":"3f0789147cab670ab6df25e4e5d6f7c6d984fef32c5a25d110d54170f595a1fd","src/compression_options.rs":"49be16c285cb82ad40df9786847786ce3e9d42aec64c6ec8983ca2862da5dee6","src/deflate_state.rs":"7906c6cb8e82c57fbb730e0b7bfc0e6f58960b6a604ae8d17698c4345a0b1d0a","src/encoder_state.rs":"789f88e95661344d7fcc35807d7e71fd92daca418108f817c70bb3bd3000e17f","src/huffman_lengths.rs":"710190944b5306acb81566d9651c2d4e71f72ae92a702a892d2a0adbd78a41c9","src/huffman_table.rs":"582e8d98b7cea85a9861ef7628db0092493161466172d2fcc189f491a5150602","src/input_buffer.rs":"b5dd88c451e6337b081a008b2f5e1b24cd8505a49e96cf362e0e663dcac02f34","src/length_encode.rs":"87d253a168a72583b24ea2514599bcd0d51d5f3dab7272c9d8975ed9ce8aae4f","src/lib.rs":"b48f779d0b164bf66d091da5b5fef8b9598844e24ad3923f18dc15594e9c315e","src/lz77.rs":"b248c03a32e6115fd96edae38329918c970c658a2d100d2d88ef63015e5a7916","src/lzvalue.rs":"c439ca085bf393e054c725d6deda25a3acf83cf4548c940a1490b0574e481180","src/matching.rs":"20cb9d3cb05b2d274dfd19a66975fd9977b6918b213822de5939c7229427686e","src/output_writer.rs":"d5b28ef0d2745e832f47919f90dcf8e19259dce6239f3c7231c138b483467a2c","src/rle.rs":"6f0beb34ab96e0ecb41bb0d651a1e532df8460e5445eb39a4c1a7d48fa0b87d7","src/stored_block.rs":"a7c0c1c7386e7f3f4673f86dbdade6fc4a8a81d4c39a5d356856598989787b90","src/test_utils.rs":"80cd5a7fb04f1c97e0c6b5baacba8bfec6a0b77ad9861fc988df1ae936aa017f","src/writer.rs":"80ff47a68d9df6584511a60e550f80dc08ce59c9d0e97e12f1044f3d6b347220","src/zlib.rs":"005f6740ee80a85859811fb0b7da77a6dc7226745a027c6355f3051358b7a34e","tests/pg11.txt":"fbcaee1f2df4c5ec08aa77ff87eebf808851842aca5bccb40bf6673461ec2e97","tests/short.bin":"861e11f5d8dd18db9ad837a3d3308b672347456c4ae5054b1d2baef7205cbe9d","tests/test.rs":"c51379461c370e5149ef409f83daceb829261507ef17391c7d2d99b3fb356904"},"package":"8a6abb26e16e8d419b5c78662aa9f82857c2386a073da266840e474d5055ec86"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/deflate/.travis.yml b/rustc_deps/vendor/deflate/.travis.yml
deleted file mode 100644
index ff3c5f0..0000000
--- a/rustc_deps/vendor/deflate/.travis.yml
+++ /dev/null
@@ -1,9 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-os:
-  - linux
-  - osx
-sudo: false
diff --git a/rustc_deps/vendor/difference/.cargo-checksum.json b/rustc_deps/vendor/difference/.cargo-checksum.json
index 5b81146..726ca6e 100644
--- a/rustc_deps/vendor/difference/.cargo-checksum.json
+++ b/rustc_deps/vendor/difference/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"35865895d1613758ea91a51977559112bddbe7e414c217e9a0f0756d86a7c161","Cargo.toml":"5eb2f80e0614bed57405a7e05e594485dc86d9cefe1fb824ab48fd5e0212cbe5","Examples.md":"bf0a8c13c17a28b2b170c00c1593deb4ccd1e91bb7b13af0390f92730286b197","LICENSE":"1792fda8a7468d32b8b24322c0cf1c083ba3053afcd315f10b46668ba01b77a3","README.md":"08182d9667fb5b6f7685d3019708e8aed112006fbff6290b2334cdd222a185ad","appveyor.yml":"e6aabdcc8454e213186f3d7f98e87b9e0dd79a43dc1e35e0af89dbde09506839","assets/fox.png":"5fcd20685756d1c9a22a3301e57724e1b094da87bd71190d20d0ec5536261b29","assets/git-style.png":"587d92795402debee8004385eb44f4c3fb6f7afa8a3615efa26511b2d8dba7d0","assets/github-style.png":"680ccd1bf610620d9c90aa9b078ae295afa0b85458ead49d9dabf83308c0c377","assets/word-underline.png":"0eac0df0ddee8f5cbd3ec9c64c4e0ff3c930d9e8c61bbe6928b300a7202cb01e","examples/github-style.rs":"e843a419c5ba4967d9f1095b96a3e7923f3b48cf3ee45c5a72a3b4e37e06118a","examples/line-by-line.rs":"5c870cae9b9457590ee2da4ef6e52bcf75c3e20c7c6cf94cd7127b7b6e4998e8","examples/underline-words.rs":"bc595c0bafe9a295527414dd8b98fe5280e628996ab31e560f3369d44f269270","rustfmt.toml":"078f47705afd62e12a508b06dff69e6067fe89b2726693d35b54e7be4f046e7a","src/display.rs":"3cd59f244122d3dd927404b5de22cdfee9b87d4893b919dfca0e65610beba888","src/lcs.rs":"2766f4a55beabd28b9fe012338d5037f7f671efbdfa864d50e20201e07412659","src/lib.rs":"37265cdf78398416cf1a21254abaadd1debd23069a659a70edec04431410cbd2","src/main.rs":"65f0a7bd6aeca1c10c822de65a8066f3407bd34c4345b4ccd84ae5f852191cff","src/merge.rs":"be180d16869468ccb0cdda116ee486116550d6751e7688fcb068dedf770ddb0c","tests/quickcheck.rs":"cd40ccf20dc043c942399d2fc32226ffac509a3b356f25f79b4b9355a2d43caa"},"package":"524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"}
\ No newline at end of file
+{"files":{"Cargo.toml":"5eb2f80e0614bed57405a7e05e594485dc86d9cefe1fb824ab48fd5e0212cbe5","Examples.md":"bf0a8c13c17a28b2b170c00c1593deb4ccd1e91bb7b13af0390f92730286b197","LICENSE":"1792fda8a7468d32b8b24322c0cf1c083ba3053afcd315f10b46668ba01b77a3","README.md":"08182d9667fb5b6f7685d3019708e8aed112006fbff6290b2334cdd222a185ad","appveyor.yml":"e6aabdcc8454e213186f3d7f98e87b9e0dd79a43dc1e35e0af89dbde09506839","assets/fox.png":"5fcd20685756d1c9a22a3301e57724e1b094da87bd71190d20d0ec5536261b29","assets/git-style.png":"587d92795402debee8004385eb44f4c3fb6f7afa8a3615efa26511b2d8dba7d0","assets/github-style.png":"680ccd1bf610620d9c90aa9b078ae295afa0b85458ead49d9dabf83308c0c377","assets/word-underline.png":"0eac0df0ddee8f5cbd3ec9c64c4e0ff3c930d9e8c61bbe6928b300a7202cb01e","examples/github-style.rs":"e843a419c5ba4967d9f1095b96a3e7923f3b48cf3ee45c5a72a3b4e37e06118a","examples/line-by-line.rs":"5c870cae9b9457590ee2da4ef6e52bcf75c3e20c7c6cf94cd7127b7b6e4998e8","examples/underline-words.rs":"bc595c0bafe9a295527414dd8b98fe5280e628996ab31e560f3369d44f269270","rustfmt.toml":"078f47705afd62e12a508b06dff69e6067fe89b2726693d35b54e7be4f046e7a","src/display.rs":"3cd59f244122d3dd927404b5de22cdfee9b87d4893b919dfca0e65610beba888","src/lcs.rs":"2766f4a55beabd28b9fe012338d5037f7f671efbdfa864d50e20201e07412659","src/lib.rs":"37265cdf78398416cf1a21254abaadd1debd23069a659a70edec04431410cbd2","src/main.rs":"65f0a7bd6aeca1c10c822de65a8066f3407bd34c4345b4ccd84ae5f852191cff","src/merge.rs":"be180d16869468ccb0cdda116ee486116550d6751e7688fcb068dedf770ddb0c","tests/quickcheck.rs":"cd40ccf20dc043c942399d2fc32226ffac509a3b356f25f79b4b9355a2d43caa"},"package":"524cbf6897b527295dff137cec09ecf3a05f4fddffd7dfcd1585403449e74198"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/difference/.travis.yml b/rustc_deps/vendor/difference/.travis.yml
deleted file mode 100644
index 1180305..0000000
--- a/rustc_deps/vendor/difference/.travis.yml
+++ /dev/null
@@ -1,53 +0,0 @@
-dist: trusty
-sudo: false
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-
-install:
-  # Install rustfmt
-  # There are no linux binaries for rustfmt-bin available right now. See https://github.com/japaric/rustfmt-bin/issues/2.
-  #- curl -LSfs https://japaric.github.io/trust/install.sh | sh -s -- --force --crate rustfmt --git japaric/rustfmt-bin --tag v0.9.0-20170614
-  - if [ "$TRAVIS_RUST_VERSION" = "stable" ]; then (cargo install rustfmt --vers 0.9.0 --force) fi
-  # Install clippy
-  - if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then (cargo install clippy --force) fi
-  - export PATH=$HOME/.cargo/bin:$PATH
-
-script:
-  - cargo build --features=bin
-  - cargo test
-  - if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then (cargo clippy) fi
-  - if [ "$TRAVIS_RUST_VERSION" = "stable" ]; then (cargo fmt -- --write-mode=diff) fi
-
-addons:
-  apt:
-    packages:
-      - libcurl4-openssl-dev
-      - libelf-dev
-      - libdw-dev
-      - cmake
-      - gcc
-      - binutils-dev
-
-cache:
-  apt: true
-  directories:
-    - $HOME/.cargo
-    - target/debug/build
-
-before_cache:
-    # Travis can't cache files that are not readable by "others"
-    - chmod -R a+r $HOME/.cargo
-
-after_success: |
-  [ $TRAVIS_RUST_VERSION = stable ] &&
-  wget https://github.com/SimonKagstrom/kcov/archive/master.tar.gz &&
-  tar xzf master.tar.gz && mkdir kcov-master/build && cd kcov-master/build && cmake .. && make && make install DESTDIR=../tmp && cd ../.. &&
-  ls target/debug &&
-  ./kcov-master/tmp/usr/local/bin/kcov --coveralls-id=$TRAVIS_JOB_ID --exclude-pattern=/.cargo target/kcov target/debug/difference-*
-
-env:
-  global:
-    - secure: by21VBcjZUvTcgLKxo9lSKIoHfPCHPHitazvLgebRInyI82hH39HiCsNLVwjU6BGGjTnj9Y/j/ygr8qogq+WW+Wls2LrMsomid+I5WvldgJNPoKaHNNa68zTK18zVq68nM351CU9CjMSMS7MPpWsrgD6avAB50nmrEjWhi8n6jwu6FIXkRZtOyIgdlR/Qm1CnOA5OX2i3EiGe0r90tLpEpyaQ2Ml0pLyBdlxftqef++nvY9e0ufihGdzkRyVAsDs7td4JkHkEPN9rKMRx0jq42daB5Mvu9nWKPGbz04RfOug0SxaT7BnUhRsIJGwd9be7Hz2Wdvb5I7uV/g86INojMhU8S4/BlXKkIy1CZvLrQc+fGjeA9MXFeKFBVbC3L+qAfTPdkhjw6VAdg37tiYzV4lnPYyujiY00qGmKTKoG+xGTx/jEX2kRt8p7OGXgougwxIbEowHOduYtbCnBmhng6bcy3qyr8AztcM44AIlEy3OLKB7ocgvoFv+Fz4kjROQCVq+oW86bZ014Ex8k32wAlibU8M3mVALRk6Cgk7nbCl6s1+Y5uZE/TeDaLEYpLGSqYWeU9in8o4m6U65bh9XEUCnEgY7IcwV93zHUA+i50bwOROkS7c57bvAfdq/dwaW79VHqpq5D2toDVlKXYN90r6vAX0VhH91rW31FNXe0X0=
diff --git a/rustc_deps/vendor/digest/.cargo-checksum.json b/rustc_deps/vendor/digest/.cargo-checksum.json
index 523ae03..bcc3f10 100644
--- a/rustc_deps/vendor/digest/.cargo-checksum.json
+++ b/rustc_deps/vendor/digest/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"5c4d89b9b833bb5681c04817ef4e799012a6252ba90021c6482010c8871b87a6","Cargo.toml":"b3667b1e1a3985dd2c9e7873f6945c2d7163ed7da95569f40c2097285a325ec4","LICENSE-APACHE":"a9040321c3712d8fd0b09cf52b17445de04a23a10165049ae187cd39e5c86be5","LICENSE-MIT":"9e0dfd2dd4173a530e238cb6adb37aa78c34c6bc7444e0e10c1ab5d8881f63ba","src/dev.rs":"c824f834fa8b8c729024e4ec61138e89c26a56bfb6b50295600dddb5ff8fff62","src/digest.rs":"6710ac33c80e6159a2396839794fc76a61b94ab573516a69486457b3e291c793","src/errors.rs":"cff5bf2350bc109ad4f08caacf6780ff1e7016d9995f0847e84e96a8e31ab9d5","src/lib.rs":"bf4e93ebd066513001f3d6d77024ae8addf4df4fd89f76549fd1b73df386f3e4"},"package":"03b072242a8cbaf9c145665af9d250c59af3b958f83ed6824e13533cf76d5b90"}
\ No newline at end of file
+{"files":{"Cargo.toml":"b3667b1e1a3985dd2c9e7873f6945c2d7163ed7da95569f40c2097285a325ec4","LICENSE-APACHE":"a9040321c3712d8fd0b09cf52b17445de04a23a10165049ae187cd39e5c86be5","LICENSE-MIT":"9e0dfd2dd4173a530e238cb6adb37aa78c34c6bc7444e0e10c1ab5d8881f63ba","src/dev.rs":"c824f834fa8b8c729024e4ec61138e89c26a56bfb6b50295600dddb5ff8fff62","src/digest.rs":"6710ac33c80e6159a2396839794fc76a61b94ab573516a69486457b3e291c793","src/errors.rs":"cff5bf2350bc109ad4f08caacf6780ff1e7016d9995f0847e84e96a8e31ab9d5","src/lib.rs":"bf4e93ebd066513001f3d6d77024ae8addf4df4fd89f76549fd1b73df386f3e4"},"package":"03b072242a8cbaf9c145665af9d250c59af3b958f83ed6824e13533cf76d5b90"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/digest/.cargo_vcs_info.json b/rustc_deps/vendor/digest/.cargo_vcs_info.json
deleted file mode 100644
index 5283579..0000000
--- a/rustc_deps/vendor/digest/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "c02ab3d77605b540fd5dc2ea1a45c184f7d9e7d8"
-  }
-}
diff --git a/rustc_deps/vendor/either/.cargo-checksum.json b/rustc_deps/vendor/either/.cargo-checksum.json
index 3d902c5..9bc3f2f 100644
--- a/rustc_deps/vendor/either/.cargo-checksum.json
+++ b/rustc_deps/vendor/either/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"cb7544c8f5d89b0c57e4d0e53b0676bae662c21a4ee24226ab5a81a4ac8934ce","Cargo.lock":"b3c76c4a473ca7450b5bec0ba80c6e694abbbbe8abaad3fd766b8fd145d004f0","Cargo.toml":"a4328fa9d5ecf861ff70b57c4e77c444e1ed5b9c1a696132e4e0733058569749","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7576269ea71f767b99297934c0b2367532690f8c4badc695edf8e04ab6a1e545","README-crates.io.md":"b775991a01ab4a0a8de6169f597775319d9ce8178f5c74ccdc634f13a286b20c","README.rst":"f8a01f3853a0ed5c4fdece028cc4822dd32999272f80cc7406de233aa5701f75","src/lib.rs":"9cfcc2230e824dd96d7102bd1f767ca1308ba908b18bf9419ef4c46001546953"},"package":"3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"}
\ No newline at end of file
+{"files":{"Cargo.toml":"a4328fa9d5ecf861ff70b57c4e77c444e1ed5b9c1a696132e4e0733058569749","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7576269ea71f767b99297934c0b2367532690f8c4badc695edf8e04ab6a1e545","README-crates.io.md":"b775991a01ab4a0a8de6169f597775319d9ce8178f5c74ccdc634f13a286b20c","README.rst":"f8a01f3853a0ed5c4fdece028cc4822dd32999272f80cc7406de233aa5701f75","src/lib.rs":"9cfcc2230e824dd96d7102bd1f767ca1308ba908b18bf9419ef4c46001546953"},"package":"3be565ca5c557d7f59e7cfcf1844f9e3033650c929c6566f511e8005f205c1d0"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/either/.travis.yml b/rustc_deps/vendor/either/.travis.yml
deleted file mode 100644
index 62213b3..0000000
--- a/rustc_deps/vendor/either/.travis.yml
+++ /dev/null
@@ -1,29 +0,0 @@
-language: rust
-sudo: false
-
-# run builds for all the trains (and more)
-rust:
-  - 1.12.0
-  - stable
-  - beta
-  - nightly
-
-branches:
-  only:
-    - master
-# the main build
-script:
-  - |
-      cargo build --features "${FEATURES}" &&
-      cargo test --features "${FEATURES}" &&
-      cargo doc --features "${FEATURES}"
-
-env:
-  matrix:
-    - FEATURES=""
-    - FEATURES="serde"
-
-matrix:
-  exclude:
-    - rust: 1.12.0
-      env: FEATURES="serde"
diff --git a/rustc_deps/vendor/either/Cargo.lock b/rustc_deps/vendor/either/Cargo.lock
deleted file mode 100644
index c9313df..0000000
--- a/rustc_deps/vendor/either/Cargo.lock
+++ /dev/null
@@ -1,63 +0,0 @@
-[[package]]
-name = "either"
-version = "1.5.0"
-dependencies = [
- "serde 1.0.74 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "proc-macro2"
-version = "0.4.13"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "quote"
-version = "0.6.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "serde"
-version = "1.0.74"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "serde_derive 1.0.74 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "serde_derive"
-version = "1.0.74"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "syn 0.14.9 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "syn"
-version = "0.14.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-dependencies = [
- "proc-macro2 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)",
- "quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)",
- "unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "unicode-xid"
-version = "0.1.0"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[metadata]
-"checksum proc-macro2 0.4.13 (registry+https://github.com/rust-lang/crates.io-index)" = "ee5697238f0d893c7f0ecc59c0999f18d2af85e424de441178bcacc9f9e6cf67"
-"checksum quote 0.6.8 (registry+https://github.com/rust-lang/crates.io-index)" = "dd636425967c33af890042c483632d33fa7a18f19ad1d7ea72e8998c6ef8dea5"
-"checksum serde 1.0.74 (registry+https://github.com/rust-lang/crates.io-index)" = "f218becd0d51dd24297ef804cb9b2de179dcdc2a3ddf8a73b04b4d595d9e6338"
-"checksum serde_derive 1.0.74 (registry+https://github.com/rust-lang/crates.io-index)" = "47e3375b02728fa6f8c53cb8c1ad3dea7689e12793b6af399ad1e0e202f91c18"
-"checksum syn 0.14.9 (registry+https://github.com/rust-lang/crates.io-index)" = "261ae9ecaa397c42b960649561949d69311f08eeaea86a65696e6e46517cf741"
-"checksum unicode-xid 0.1.0 (registry+https://github.com/rust-lang/crates.io-index)" = "fc72304796d0818e357ead4e000d19c9c174ab23dc11093ac919054d20a6a7fc"
diff --git a/rustc_deps/vendor/encoding/.cargo-checksum.json b/rustc_deps/vendor/encoding/.cargo-checksum.json
index 4160bd0..820e44c 100644
--- a/rustc_deps/vendor/encoding/.cargo-checksum.json
+++ b/rustc_deps/vendor/encoding/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"410fb8fb7f11a98b78ef4f0ddc2955c6e58a25aeed8430706c71c48af29bdb94","AUTHORS.txt":"b955fe9267f4b86cdb1407b3bfb630a3edac87b69a6778d0446620e366b7a915","Cargo.toml":"dcc68946731af16a413296ddb429c7302f47af0f16c03de544dfbf52baad8a9e","LICENSE.txt":"f35cb7760b1baf8636c53bf8fb1ffa1e7346d683c4de7788fae78c7de2d26b84","Makefile":"b901e1ef3c0bf6fd8916d8abd3dc7e7d4bda8d0595c31ac83f6e17ce4a77c6eb","README.md":"28e7ba79d072e01f10b6d5c9e3c46c80d0d5dd772f52088ea13873f24faf9e60","examples/recode.rs":"e96328e4606dd5715a9bb59204d1b2343cacd5940864ae7ba835dda2231e9e43","src/all.rs":"59e212b045a9521079853e316ac73d031f942feee41784a5f8e753a646a1e308","src/codec/ascii.rs":"9950259de2cf955ac568a8ae83750431f88d213fad0f0f45be4790ba7f85fdda","src/codec/error.rs":"dfa55e488df9f7aeafc7f60293204c38fdc183427cf4d5ccc012fa1ea15e9314","src/codec/japanese.rs":"c443373b245f6aae5da7dc18166ee1d088c0da8535f048cd99ded7c02903e558","src/codec/korean.rs":"847cf6c1622d5b992e63f944ea4fd81c8fb6115831b8e76e7b7b27e1ea6253a3","src/codec/simpchinese.rs":"601b45c054bdee3407336b32389810c77667a7aae74b6b7f6a7f3c7690f1ec8c","src/codec/singlebyte.rs":"204afbc5b839177db9995b70ac6d5710b01fc626b6f5186862bfc10728c6f2b5","src/codec/tradchinese.rs":"fbcdd1618ab276a7de199efe9cfc7dccd607c620058eadcd26ba3dc08328f37a","src/codec/utf_16.rs":"08964b3e2d2225cf60ec276d97229dc46c8d60e9770aa0052949d2d7002e8252","src/codec/utf_8.rs":"ae07e609db9345a98e59b90624dba10dd7d0bd1c600e0e094b191d4e98f3cacc","src/codec/whatwg.rs":"69030440cf97d7ce94725bee97ec3ff0457d22b02c56c7827e36a95f77ccc3a9","src/examples/UTF-8-test.txt":"d916101903b980dbf90eec8493886e1b043ab73c634fe1b3ff735c6f2397b9f4","src/examples/outer-space-treaty.html":"4bffd63f090d88709f2b651253eea589ff69ffdae42ca59e8b61e1a26985cf64","src/index/gen_index.py":"ee7ecee7b7d9d822906f5aaa4e9f2c38c32207fe8be5a768182038a9cba3f4e8","src/label.rs":"9aa3b4aa7cb38f509798fa1757e80ef4a845340fce94e60509c2be02c1adf1af","src/lib.rs":"6984375ad3ef2d8dc616e7b1edd3b6af366da5bd06fc3d2cc3119032cdf5dc3a","src/testutils.rs":"c1ba29344e5f7ebfb762953947cdfbe45d233a3dd5ce548dccf0e997c05bf3b5","src/types.rs":"f752da1082964ed0e239647ce5b375bdd6550c69adec6b66e2561a50c22ea615","src/util.rs":"4c0abca2fbc51cfb1e458b9527ceab14d410cde4f85e822952b02764eead28df"},"package":"6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec"}
\ No newline at end of file
+{"files":{"AUTHORS.txt":"b955fe9267f4b86cdb1407b3bfb630a3edac87b69a6778d0446620e366b7a915","Cargo.toml":"dcc68946731af16a413296ddb429c7302f47af0f16c03de544dfbf52baad8a9e","LICENSE.txt":"f35cb7760b1baf8636c53bf8fb1ffa1e7346d683c4de7788fae78c7de2d26b84","Makefile":"b901e1ef3c0bf6fd8916d8abd3dc7e7d4bda8d0595c31ac83f6e17ce4a77c6eb","README.md":"28e7ba79d072e01f10b6d5c9e3c46c80d0d5dd772f52088ea13873f24faf9e60","examples/recode.rs":"e96328e4606dd5715a9bb59204d1b2343cacd5940864ae7ba835dda2231e9e43","src/all.rs":"59e212b045a9521079853e316ac73d031f942feee41784a5f8e753a646a1e308","src/codec/ascii.rs":"9950259de2cf955ac568a8ae83750431f88d213fad0f0f45be4790ba7f85fdda","src/codec/error.rs":"dfa55e488df9f7aeafc7f60293204c38fdc183427cf4d5ccc012fa1ea15e9314","src/codec/japanese.rs":"c443373b245f6aae5da7dc18166ee1d088c0da8535f048cd99ded7c02903e558","src/codec/korean.rs":"847cf6c1622d5b992e63f944ea4fd81c8fb6115831b8e76e7b7b27e1ea6253a3","src/codec/simpchinese.rs":"601b45c054bdee3407336b32389810c77667a7aae74b6b7f6a7f3c7690f1ec8c","src/codec/singlebyte.rs":"204afbc5b839177db9995b70ac6d5710b01fc626b6f5186862bfc10728c6f2b5","src/codec/tradchinese.rs":"fbcdd1618ab276a7de199efe9cfc7dccd607c620058eadcd26ba3dc08328f37a","src/codec/utf_16.rs":"08964b3e2d2225cf60ec276d97229dc46c8d60e9770aa0052949d2d7002e8252","src/codec/utf_8.rs":"ae07e609db9345a98e59b90624dba10dd7d0bd1c600e0e094b191d4e98f3cacc","src/codec/whatwg.rs":"69030440cf97d7ce94725bee97ec3ff0457d22b02c56c7827e36a95f77ccc3a9","src/examples/UTF-8-test.txt":"d916101903b980dbf90eec8493886e1b043ab73c634fe1b3ff735c6f2397b9f4","src/examples/outer-space-treaty.html":"4bffd63f090d88709f2b651253eea589ff69ffdae42ca59e8b61e1a26985cf64","src/index/gen_index.py":"ee7ecee7b7d9d822906f5aaa4e9f2c38c32207fe8be5a768182038a9cba3f4e8","src/label.rs":"9aa3b4aa7cb38f509798fa1757e80ef4a845340fce94e60509c2be02c1adf1af","src/lib.rs":"6984375ad3ef2d8dc616e7b1edd3b6af366da5bd06fc3d2cc3119032cdf5dc3a","src/testutils.rs":"c1ba29344e5f7ebfb762953947cdfbe45d233a3dd5ce548dccf0e997c05bf3b5","src/types.rs":"f752da1082964ed0e239647ce5b375bdd6550c69adec6b66e2561a50c22ea615","src/util.rs":"4c0abca2fbc51cfb1e458b9527ceab14d410cde4f85e822952b02764eead28df"},"package":"6b0d943856b990d12d3b55b359144ff341533e516d94098b1d3fc1ac666d36ec"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/encoding/.travis.yml b/rustc_deps/vendor/encoding/.travis.yml
deleted file mode 100644
index 6f20974..0000000
--- a/rustc_deps/vendor/encoding/.travis.yml
+++ /dev/null
@@ -1,13 +0,0 @@
-language: rust
-os:
-  - linux
-  - osx
-env:
-  global:
-    - secure: WtFY+Nu8Erb9JOqX38XHyMH0C4b0y5sDAVw2GSo3pr9o5Re/is8Fa7CBtikoZp1IfB70b7mNK7T5hqvh289M+Ur43OA4EAjWi9rKZYAoK94GXRMNCwhUQR4OiPkQ8s/oJxcNGgb2lKT4Bwtpa2/kT4HA2Md6wo1Db30D4lskrsc=
-script:
-  - cargo build -v
-  - make test
-  - cargo doc
-after_script:
-  - cd target && curl http://www.rust-ci.org/artifacts/put?t=$RUSTCI_TOKEN | sh
diff --git a/rustc_deps/vendor/euclid/.cargo-checksum.json b/rustc_deps/vendor/euclid/.cargo-checksum.json
index 464bc52..44517ae 100644
--- a/rustc_deps/vendor/euclid/.cargo-checksum.json
+++ b/rustc_deps/vendor/euclid/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"6023213d4635e7e0eebdf63ccac18b31765bda424289f3f7f61bb0a6ff919e1e","COPYRIGHT":"ec82b96487e9e778ee610c7ab245162464782cfa1f555c2299333f8dbe5c036a","Cargo.toml":"9b98c53a1f751f2cec009e89077939be7af2070a8fe36d9e458ddbe2db6d8ecf","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"62065228e42caebca7e7d7db1204cbb867033de5982ca4009928915e4095f3a3","README.md":"625bec69c76ce5423fdd05cfe46922b2680ec517f97c5854ce34798d1d8a9541","src/approxeq.rs":"6594377e8f6c20f88f628520d8de9b9a59c5892a0ee9a6ccd13c8400c1499911","src/homogen.rs":"cb26346ad1ea2797bdc1cac7f532872becabf28a1f9c60792f86ad4a655582f9","src/length.rs":"3171315822707728b1bfbdd04a4190ffb7206b4bfc59e9dd072bb2caa05ff292","src/lib.rs":"2c1e367c85da913d8980821632a3024a21706e4908b003b4c37ffcae49efce7e","src/macros.rs":"d2b7b391f58fe9cedb426780cfa1d2771f9ac786a6237b0f89d3e5788f5ec1b7","src/num.rs":"4439479fad5729073e0bfe0b96b547672a237430d48e564519759b9550baa033","src/point.rs":"2c399e282c2e81528775a1fc6ee1a0f2f6f71ed4a14bbe426115ae78b4cf2149","src/rect.rs":"dc7131fe3884803d549fb66dec589ad671790451dbb3770d360509fbfabcf6ec","src/rotation.rs":"982aaca640215bacc5d2dc60a8949bb2510d5b6d492975b8b6946a7c8f69b496","src/scale.rs":"fc07bcf47f3a1215023c830059f0d270e570cbd37fe8c367ef4a47b191f4ae3e","src/side_offsets.rs":"f114cb881256bbeff2ee2aa305d363e2dea65aa8535140f104f6fa9364bd02f5","src/size.rs":"1fe99377bee13835ca416adbccdb0d163091a3dcf2977c3222da2d6b22d70621","src/transform2d.rs":"2f9bafe40b9a6dd9c41747aabfdefbfc9ee48daf4f4297d2320ccbdac185a30d","src/transform3d.rs":"6af722a693e6cd041440871be47069bad3392d670155ba05f9abbc11d9534b4c","src/trig.rs":"97a263c4f178b0332501659ca8143f9f637a0755aca189dd31ac551bcd4cb73c","src/vector.rs":"b0b41eac9c823e05bf6357e69c71dac977db2d8ab27b25f80f1f44b056d15f6d"},"package":"4019b11e3498dd84d8893848c3d70e40c6dc71bb277ae5252cc16af006d06872"}
\ No newline at end of file
+{"files":{"COPYRIGHT":"ec82b96487e9e778ee610c7ab245162464782cfa1f555c2299333f8dbe5c036a","Cargo.toml":"0bcb9056495f70a42ab15eb9c144416526d6566b95dc5ac8bd7ddd9cb9b71b4b","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"62065228e42caebca7e7d7db1204cbb867033de5982ca4009928915e4095f3a3","README.md":"625bec69c76ce5423fdd05cfe46922b2680ec517f97c5854ce34798d1d8a9541","src/approxeq.rs":"6594377e8f6c20f88f628520d8de9b9a59c5892a0ee9a6ccd13c8400c1499911","src/homogen.rs":"cb26346ad1ea2797bdc1cac7f532872becabf28a1f9c60792f86ad4a655582f9","src/length.rs":"3171315822707728b1bfbdd04a4190ffb7206b4bfc59e9dd072bb2caa05ff292","src/lib.rs":"f89c2b86cabae4431a956b88c630c5cbdf51f7329dfeb677ab4fd4ff02e7d53b","src/macros.rs":"d2b7b391f58fe9cedb426780cfa1d2771f9ac786a6237b0f89d3e5788f5ec1b7","src/num.rs":"4439479fad5729073e0bfe0b96b547672a237430d48e564519759b9550baa033","src/point.rs":"2c399e282c2e81528775a1fc6ee1a0f2f6f71ed4a14bbe426115ae78b4cf2149","src/rect.rs":"dc7131fe3884803d549fb66dec589ad671790451dbb3770d360509fbfabcf6ec","src/rotation.rs":"982aaca640215bacc5d2dc60a8949bb2510d5b6d492975b8b6946a7c8f69b496","src/scale.rs":"fc07bcf47f3a1215023c830059f0d270e570cbd37fe8c367ef4a47b191f4ae3e","src/side_offsets.rs":"f114cb881256bbeff2ee2aa305d363e2dea65aa8535140f104f6fa9364bd02f5","src/size.rs":"1fe99377bee13835ca416adbccdb0d163091a3dcf2977c3222da2d6b22d70621","src/transform2d.rs":"2f9bafe40b9a6dd9c41747aabfdefbfc9ee48daf4f4297d2320ccbdac185a30d","src/transform3d.rs":"6af722a693e6cd041440871be47069bad3392d670155ba05f9abbc11d9534b4c","src/translation.rs":"c835abaf167234b288e95323f9e693099be9fd992fc137cd6e692edbe4456f19","src/trig.rs":"97a263c4f178b0332501659ca8143f9f637a0755aca189dd31ac551bcd4cb73c","src/vector.rs":"b0b41eac9c823e05bf6357e69c71dac977db2d8ab27b25f80f1f44b056d15f6d"},"package":"600657e7e5c03bfbccdc68721bc3b5abcb761553973387124eae9c9e4f02c210"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/euclid/.travis.yml b/rustc_deps/vendor/euclid/.travis.yml
deleted file mode 100644
index 6b08dad..0000000
--- a/rustc_deps/vendor/euclid/.travis.yml
+++ /dev/null
@@ -1,31 +0,0 @@
-language: rust
-
-notifications:
-  webhooks: http://build.servo.org:54856/travis
-
-rust:
-  - 1.23.0
-  - stable
-  - beta
-  - nightly
-
-env:
-  - FEATURES=""
-  - FEATURES="--features serde"
-
-matrix:
-  include:
-    - rust: stable
-      env: FEATURES=""
-    - rust: stable
-      env: FEATURES="--features mint"
-    - rust: beta
-      env: FEATURES=""
-    - rust: nightly
-      env: FEATURES="--features unstable"
-    - rust: nightly
-      env: FEATURES="--features unstable,serde"
-
-script:
-  - cargo build $FEATURES
-  - cargo test --verbose $FEATURES
diff --git a/rustc_deps/vendor/euclid/Cargo.toml b/rustc_deps/vendor/euclid/Cargo.toml
index 4b74c49..9e34cc5 100644
--- a/rustc_deps/vendor/euclid/Cargo.toml
+++ b/rustc_deps/vendor/euclid/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "euclid"
-version = "0.19.2"
+version = "0.19.3"
 authors = ["The Servo Project Developers"]
 description = "Geometry primitives"
 documentation = "https://docs.rs/euclid/"
diff --git a/rustc_deps/vendor/euclid/src/lib.rs b/rustc_deps/vendor/euclid/src/lib.rs
index 7f7d5ae..2f080ab 100644
--- a/rustc_deps/vendor/euclid/src/lib.rs
+++ b/rustc_deps/vendor/euclid/src/lib.rs
@@ -78,6 +78,7 @@
 pub use homogen::HomogeneousVector;
 
 pub use rect::{rect, Rect, TypedRect};
+pub use translation::{TypedTranslation2D, TypedTranslation3D};
 pub use rotation::{Angle, Rotation2D, Rotation3D, TypedRotation2D, TypedRotation3D};
 pub use side_offsets::{SideOffsets2D, TypedSideOffsets2D};
 pub use size::{Size2D, TypedSize2D, size2};
@@ -98,6 +99,7 @@
 mod size;
 mod transform2d;
 mod transform3d;
+mod translation;
 mod trig;
 mod vector;
 
diff --git a/rustc_deps/vendor/euclid/src/translation.rs b/rustc_deps/vendor/euclid/src/translation.rs
new file mode 100644
index 0000000..0480882
--- /dev/null
+++ b/rustc_deps/vendor/euclid/src/translation.rs
@@ -0,0 +1,474 @@
+// Copyright 2018 The Servo Project Developers. See the COPYRIGHT
+// file at the top-level directory of this distribution.
+//
+// Licensed under the Apache License, Version 2.0 <LICENSE-APACHE or
+// http://www.apache.org/licenses/LICENSE-2.0> or the MIT license
+// <LICENSE-MIT or http://opensource.org/licenses/MIT>, at your
+// option. This file may not be copied, modified, or distributed
+// except according to those terms.
+
+use {TypedVector2D, TypedPoint2D, TypedVector3D, TypedPoint3D, TypedTransform2D, TypedTransform3D};
+use {TypedSize2D, TypedRect, vec2, point2, vec3, point3};
+use num::*;
+use trig::Trig;
+use core::ops::{Add, Sub, Neg, Mul, Div};
+use core::marker::PhantomData;
+use core::fmt;
+
+define_matrix! {
+    /// A 2d transformation from a space to another that can only express translations.
+    ///
+    /// The main benefit of this type over a TypedVector2D is the ability to cast
+    /// between a source and a destination spaces.
+    ///
+    /// Example:
+    ///
+    /// ```
+    /// use euclid::{TypedTranslation2D, TypedPoint2D, point2};
+    /// struct ParentSpace;
+    /// struct ChildSpace;
+    /// type ScrollOffset = TypedTranslation2D<i32, ParentSpace, ChildSpace>;
+    /// type ParentPoint = TypedPoint2D<i32, ParentSpace>;
+    /// type ChildPoint = TypedPoint2D<i32, ChildSpace>;
+    ///
+    /// let scrolling = ScrollOffset::new(0, 100);
+    /// let p1: ParentPoint = point2(0, 0);
+    /// let p2: ChildPoint = scrolling.transform_point(&p1);
+    /// ```
+    ///
+    pub struct TypedTranslation2D<T, Src, Dst> {
+        pub x: T,
+        pub y: T,
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst> {
+    #[inline]
+    pub fn new(x: T, y: T) -> Self {
+        TypedTranslation2D {
+            x,
+            y,
+            _unit: PhantomData,
+        }
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst>
+where
+    T : Copy
+{
+    #[inline]
+    pub fn to_array(&self) -> [T; 2] {
+        [self.x, self.y]
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst>
+where
+    T : Copy + Zero
+{
+    #[inline]
+    pub fn identity() -> Self {
+        let _0 = T::zero();
+        TypedTranslation2D::new(_0, _0)
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst>
+where
+    T: Zero + PartialEq
+{
+    #[inline]
+    pub fn is_identity(&self) -> bool {
+        self.x == T::zero() && self.y == T::zero()
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst>
+where
+    T: Copy + Add<T, Output = T>
+{
+    /// Translate a point and cast its unit.
+    #[inline]
+    pub fn transform_point(&self, p: &TypedPoint2D<T, Src>) -> TypedPoint2D<T, Dst> {
+        point2(p.x + self.x, p.y + self.y)
+    }
+
+    /// Translate a rectangle and cast its unit.
+    #[inline]
+    pub fn transform_rect(&self, r: &TypedRect<T, Src>) -> TypedRect<T, Dst> {
+        TypedRect {
+            origin: self.transform_point(&r.origin),
+            size: self.transform_size(&r.size),
+        }
+    }
+
+    /// No-op, just cast the unit.
+    #[inline]
+    pub fn transform_size(&self, s: &TypedSize2D<T, Src>) -> TypedSize2D<T, Dst> {
+        TypedSize2D::new(s.width, s.height)
+    }
+
+    /// Cast into a 2D vector.
+    pub fn to_vector(&self) -> TypedVector2D<T, Src> {
+        vec2(self.x, self.y)
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst>
+where
+    T: Copy + Neg<Output = T>
+{
+    /// Return the inverse transformation.
+    #[inline]
+    pub fn inverse(&self) -> TypedTranslation2D<T, Dst, Src> {
+        TypedTranslation2D::new(-self.x, -self.y)
+    }
+}
+
+impl<T, Src, Dst1, Dst2> Add<TypedTranslation2D<T, Dst1, Dst2>>
+for TypedTranslation2D<T, Src, Dst1>
+where
+    T: Copy + Add<T, Output = T>
+{
+    type Output = TypedTranslation2D<T, Src, Dst2>;
+    fn add(self, other: TypedTranslation2D<T, Dst1, Dst2>) -> TypedTranslation2D<T, Src, Dst2> {
+        TypedTranslation2D::new(
+            self.x + other.x,
+            self.y + other.y,
+        )
+    }
+}
+
+impl<T, Src, Dst1, Dst2>
+    Sub<TypedTranslation2D<T, Dst1, Dst2>>
+    for TypedTranslation2D<T, Src, Dst2>
+where
+    T: Copy + Sub<T, Output = T>
+{
+    type Output = TypedTranslation2D<T, Src, Dst1>;
+    fn sub(self, other: TypedTranslation2D<T, Dst1, Dst2>) -> TypedTranslation2D<T, Src, Dst1> {
+        TypedTranslation2D::new(
+            self.x - other.x,
+            self.y - other.y,
+        )
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation2D<T, Src, Dst>
+where
+    T: Copy
+        + Clone
+        + Add<T, Output = T>
+        + Mul<T, Output = T>
+        + Div<T, Output = T>
+        + Sub<T, Output = T>
+        + Trig
+        + PartialOrd
+        + One
+        + Zero,
+{
+    /// Returns the matrix representation of this translation.
+    #[inline]
+    pub fn to_transform(&self) -> TypedTransform2D<T, Src, Dst> {
+        TypedTransform2D::create_translation(self.x, self.y)
+    }
+}
+
+impl<T, Src, Dst> From<TypedVector2D<T, Src>> for TypedTranslation2D<T, Src, Dst>
+where
+    T: Copy
+{
+    fn from(v: TypedVector2D<T, Src>) -> Self {
+        TypedTranslation2D::new(v.x, v.y)
+    }
+}
+
+impl<T, Src, Dst> Into<TypedVector2D<T, Src>> for TypedTranslation2D<T, Src, Dst>
+where
+    T: Copy
+{
+    fn into(self) -> TypedVector2D<T, Src> {
+        vec2(self.x, self.y)
+    }
+}
+
+impl<T, Src, Dst> Into<TypedTransform2D<T, Src, Dst>> for TypedTranslation2D<T, Src, Dst>
+where
+    T: Copy
+        + Clone
+        + Add<T, Output = T>
+        + Mul<T, Output = T>
+        + Div<T, Output = T>
+        + Sub<T, Output = T>
+        + Trig
+        + PartialOrd
+        + One
+        + Zero,
+{
+    fn into(self) -> TypedTransform2D<T, Src, Dst> {
+        self.to_transform()
+    }
+}
+
+impl <T, Src, Dst> Default for TypedTranslation2D<T, Src, Dst>
+    where T: Copy + Zero
+{
+    fn default() -> Self {
+        Self::identity()
+    }
+}
+
+impl<T, Src, Dst> fmt::Debug for TypedTranslation2D<T, Src, Dst>
+where T: Copy + fmt::Debug {
+    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+        self.to_array().fmt(f)
+    }
+}
+
+
+
+define_matrix! {
+    /// A 3d transformation from a space to another that can only express translations.
+    ///
+    /// The main benefit of this type over a TypedVector3D is the ability to cast
+    /// between a source and a destination spaces.
+    pub struct TypedTranslation3D<T, Src, Dst> {
+        pub x: T,
+        pub y: T,
+        pub z: T,
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst> {
+    #[inline]
+    pub fn new(x: T, y: T, z: T) -> Self {
+        TypedTranslation3D {
+            x,
+            y,
+            z,
+            _unit: PhantomData,
+        }
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy
+{
+    #[inline]
+    pub fn to_array(&self) -> [T; 3] {
+        [self.x, self.y, self.z]
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy + Zero
+{
+    #[inline]
+    pub fn identity() -> Self {
+        let _0 = T::zero();
+        TypedTranslation3D::new(_0, _0, _0)
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst>
+where
+    T: Zero + PartialEq
+{
+    #[inline]
+    pub fn is_identity(&self) -> bool {
+        self.x == T::zero() && self.y == T::zero() && self.z == T::zero()
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy + Add<T, Output = T>
+{
+    /// Translate a point and cast its unit.
+    #[inline]
+    pub fn transform_point3d(&self, p: &TypedPoint3D<T, Src>) -> TypedPoint3D<T, Dst> {
+        point3(p.x + self.x, p.y + self.y, p.z + self.z)
+    }
+
+    /// Translate a point and cast its unit.
+    #[inline]
+    pub fn transform_point2d(&self, p: &TypedPoint2D<T, Src>) -> TypedPoint2D<T, Dst> {
+        point2(p.x + self.x, p.y + self.y)
+    }
+
+    /// Translate a rectangle and cast its unit.
+    #[inline]
+    pub fn transform_rect(&self, r: &TypedRect<T, Src>) -> TypedRect<T, Dst> {
+        TypedRect {
+            origin: self.transform_point2d(&r.origin),
+            size: self.transform_size(&r.size),
+        }
+    }
+
+    /// No-op, just cast the unit.
+    #[inline]
+    pub fn transform_size(&self, s: &TypedSize2D<T, Src>) -> TypedSize2D<T, Dst> {
+        TypedSize2D::new(s.width, s.height)
+    }
+
+    /// Cast into a 3D vector.
+    pub fn to_vector(&self) -> TypedVector3D<T, Src> {
+        vec3(self.x, self.y, self.z)
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy + Neg<Output = T>
+{
+    /// Return the inverse transformation.
+    #[inline]
+    pub fn inverse(&self) -> TypedTranslation3D<T, Dst, Src> {
+        TypedTranslation3D::new(-self.x, -self.y, -self.z)
+    }
+}
+
+impl<T, Src, Dst1, Dst2> Add<TypedTranslation3D<T, Dst1, Dst2>>
+for TypedTranslation3D<T, Src, Dst1>
+where
+    T: Copy + Add<T, Output = T>
+{
+    type Output = TypedTranslation3D<T, Src, Dst2>;
+    fn add(self, other: TypedTranslation3D<T, Dst1, Dst2>) -> TypedTranslation3D<T, Src, Dst2> {
+        TypedTranslation3D::new(
+            self.x + other.x,
+            self.y + other.y,
+            self.z + other.z,
+        )
+    }
+}
+
+impl<T, Src, Dst1, Dst2>
+    Sub<TypedTranslation3D<T, Dst1, Dst2>>
+    for TypedTranslation3D<T, Src, Dst2>
+where
+    T: Copy + Sub<T, Output = T>
+{
+    type Output = TypedTranslation3D<T, Src, Dst1>;
+    fn sub(self, other: TypedTranslation3D<T, Dst1, Dst2>) -> TypedTranslation3D<T, Src, Dst1> {
+        TypedTranslation3D::new(
+            self.x - other.x,
+            self.y - other.y,
+            self.z - other.z,
+        )
+    }
+}
+
+impl<T, Src, Dst> TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy + Clone +
+        Add<T, Output=T> +
+        Sub<T, Output=T> +
+        Mul<T, Output=T> +
+        Div<T, Output=T> +
+        Neg<Output=T> +
+        PartialOrd +
+        Trig +
+        One + Zero,
+{
+    /// Returns the matrix representation of this translation.
+    #[inline]
+    pub fn to_transform(&self) -> TypedTransform3D<T, Src, Dst> {
+        TypedTransform3D::create_translation(self.x, self.y, self.z)
+    }
+}
+
+impl<T, Src, Dst> From<TypedVector3D<T, Src>> for TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy
+{
+    fn from(v: TypedVector3D<T, Src>) -> Self {
+        TypedTranslation3D::new(v.x, v.y, v.z)
+    }
+}
+
+impl<T, Src, Dst> Into<TypedVector3D<T, Src>> for TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy
+{
+    fn into(self) -> TypedVector3D<T, Src> {
+        vec3(self.x, self.y, self.z)
+    }
+}
+
+impl<T, Src, Dst> Into<TypedTransform3D<T, Src, Dst>> for TypedTranslation3D<T, Src, Dst>
+where
+    T: Copy + Clone +
+        Add<T, Output=T> +
+        Sub<T, Output=T> +
+        Mul<T, Output=T> +
+        Div<T, Output=T> +
+        Neg<Output=T> +
+        PartialOrd +
+        Trig +
+        One + Zero,
+{
+    fn into(self) -> TypedTransform3D<T, Src, Dst> {
+        self.to_transform()
+    }
+}
+
+impl <T, Src, Dst> Default for TypedTranslation3D<T, Src, Dst>
+    where T: Copy + Zero
+{
+    fn default() -> Self {
+        Self::identity()
+    }
+}
+
+impl<T, Src, Dst> fmt::Debug for TypedTranslation3D<T, Src, Dst>
+where T: Copy + fmt::Debug {
+    fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
+        self.to_array().fmt(f)
+    }
+}
+
+#[test]
+fn simple_translation2d() {
+    use rect;
+
+    struct A;
+    struct B;
+
+    type Translation = TypedTranslation2D<i32, A, B>;
+    type SrcRect = TypedRect<i32, A>;
+    type DstRect = TypedRect<i32, B>;
+
+    let tx = Translation::new(10, -10);
+    let r1: SrcRect = rect(10, 20, 30, 40);
+    let r2: DstRect = tx.transform_rect(&r1);
+    assert_eq!(r2, rect(20, 10, 30, 40));
+
+    let inv_tx = tx.inverse();
+    assert_eq!(inv_tx.transform_rect(&r2), r1);
+
+    assert!((tx + inv_tx).is_identity());
+}
+
+#[test]
+fn simple_translation3d() {
+    struct A;
+    struct B;
+
+    type Translation = TypedTranslation3D<i32, A, B>;
+    type SrcPoint = TypedPoint3D<i32, A>;
+    type DstPoint = TypedPoint3D<i32, B>;
+
+    let tx = Translation::new(10, -10, 100);
+    let p1: SrcPoint = point3(10, 20, 30);
+    let p2: DstPoint = tx.transform_point3d(&p1);
+    assert_eq!(p2, point3(20, 10, 130));
+
+    let inv_tx = tx.inverse();
+    assert_eq!(inv_tx.transform_point3d(&p2), p1);
+
+    assert!((tx + inv_tx).is_identity());
+}
diff --git a/rustc_deps/vendor/failure/.cargo-checksum.json b/rustc_deps/vendor/failure/.cargo-checksum.json
index 0213c3b..d5a4f82 100644
--- a/rustc_deps/vendor/failure/.cargo-checksum.json
+++ b/rustc_deps/vendor/failure/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".gitlab-ci.yml":"dfbe8fcda3a10c658667ea934358eae2189f7c711e3cff710fba47615b80c75f",".travis.yml":"a2f3133877d5c4b9a7bbbff6baa7773800243ff2e1e58a06203c4568afe3a305","CODE_OF_CONDUCT.md":"9a7bc3fdffac1288f51485e70a910a4e9de1260a64fbe894f60ad73b3386dda9","Cargo.toml":"2e6b46b3ac49b9890868cd4ea2118efbaf4ca80e136a1b5b417ce95ea91fb293","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","Makefile":"61a649ecb55115ba0f357215eb322fa6676ce163ca20bff59d7c5e275aa37035","README.md":"d4dba8ed8b388c1e24bcaaa0f0e75a0830885d6db9bedc9630591a180c744f73","RELEASES.md":"42304b5bc4cfd3a5f93d17bfe34d24f6b8bb918e89c57425adbb503f500b558c","book/src/SUMMARY.md":"32f211f5aeb51a05b3c6a41a128bdb9e410ae84008a93e6b13442e45cd1c91d4","book/src/bail-and-ensure.md":"08fb463570143ec6568189468f1f54a7210b0a1ad66a57f7f7c36619831b4d72","book/src/custom-fail.md":"d4b1501201f9c54637bc40a2413e333f6f7d4fcfc8e3de74bf40d48eca0d4e41","book/src/derive-fail.md":"69916338286f970ae6709fb309bd4d80c321fea10b927f14efe402e3c0a5fdc9","book/src/error-errorkind.md":"40663de622bfb89a3dedcf6e093ec61eb1ab704d512d725e33f66aec38911757","book/src/error-msg.md":"2ab003bde8e88e0e3b9d1559d95e84b0ca7068522e324235bc4b2fdb88996d51","book/src/error.md":"c978778e7986e5febfb37e635525053ef73c534e4b6e9fc25deb576fdbdc111d","book/src/fail.md":"076ed560e9ad293bf99611f9407d4dc17310c42cf1652dd1f3f4be85fb5f17b8","book/src/guidance.md":"614cb85ae32c2b59119cd1db7eea008e50b051563c15ba1305f312fa2eeb3ac0","book/src/howto.md":"e18744011f5cc5779f5bb981ebd10f0af440c98398b2eb5af0ee27b9662ee410","book/src/intro.md":"eeb23e1ac3ccf75c4779603662910e96df647a02c73665a206dcc34c56d77eaf","book/src/string-custom-error.md":"f1d94e211f1d2dfb2d9d9a0d7eb745b8ea7f08f26243283fddb440cb099893ff","book/src/use-error.md":"a7f91e06eb676318da04a56e4b31c73dd7db888d43c215e1534a5bc415e98258","build-docs.sh":"27b611219773192b9f972b2054522481fd5c2c9419c155535f58d05bfc31fffe","examples/bail_ensure.rs":"fffc71e41f9fbbc2a7db453ef20779716007ed6bbb01e45fbcefb1e073745ecc","examples/error_as_cause.rs":"e0a6472455db5e484febc196667bc46c939d9f890bfe550ab7435d52b1ac6b2b","examples/simple.rs":"7a5fc0673b6bb5bd3716416a6545f7ff471d182292a2c8424cf18bc4a72f6936","examples/string_custom_error_pattern.rs":"23b5bf79a7219aa8a80484c0df70cd43d882b7dccd91de9ceb1aac05b0b1b4f2","src/as_fail.rs":"8a381a9624b3d28b45f92f8b527d7496e7a722c8aa0d632f0b23bbe0af98a76e","src/backtrace/internal.rs":"3fc4943061d4396c855571f134cd922f428cbe930689c8191376867b729d7b08","src/backtrace/mod.rs":"df3a348300775182c2780c542f119c989a6004cff841d817bdf7b93eef9a0dd3","src/box_std.rs":"224f3e3f48ad217ba34a54a62f608f9cba3ce95b176558684706c2f7fe72ce72","src/compat.rs":"97ed4fa49ac80c915b384b29a1bf678430cf1ea8ea61aa794a6014a1c3217762","src/context.rs":"d91ed85add638af7c9d481cb82ee6633c3678978951a5530c166fc156efac2e4","src/error/error_impl.rs":"063b9d9127f455b7555184af2576bc59e650add13c820be4960a3a5e5da0a9e4","src/error/error_impl_small.rs":"e6cbbd4d12e8eec1bd0f15713d33a0e525599268c9316dd40240eb7cd9e19a9d","src/error/mod.rs":"103621b313bd729c94054c5d88edd59d8c07311b650873e81b5021362647ae7a","src/error_message.rs":"2a45a3bd142e6547fc5da27c182fb690e2990de11db2a9b8ce63e50d9c589997","src/lib.rs":"0969303376ab328e16d7c64d690fc71a1e4eee00b413e79009cd590a2c4abbc0","src/macros.rs":"47cc9c73291e6edb3365d72b772d781215d123240f89a5fff914d23927781efa","src/result_ext.rs":"8088c3cb1481e81891014c99cc0f1b75f25a2f212b52ae856583e4c1f1901d09","src/small_error.rs":"652bf6ff2016d8e31b6ee709ad3efaff9f4e96d5aec8120ea3986a0bb8f57c54","src/sync_failure.rs":"a92a2e8b416196322718a4e7e1262f5b1b0a6be47b849d9a7e1050c1d33490db","travis.sh":"836024f7a56fdbe24a99ab9ce9350713831f4375a60f02593aad6637b766a330"},"package":"6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"}
\ No newline at end of file
+{"files":{"CODE_OF_CONDUCT.md":"9a7bc3fdffac1288f51485e70a910a4e9de1260a64fbe894f60ad73b3386dda9","Cargo.toml":"2e6b46b3ac49b9890868cd4ea2118efbaf4ca80e136a1b5b417ce95ea91fb293","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","Makefile":"61a649ecb55115ba0f357215eb322fa6676ce163ca20bff59d7c5e275aa37035","README.md":"d4dba8ed8b388c1e24bcaaa0f0e75a0830885d6db9bedc9630591a180c744f73","RELEASES.md":"42304b5bc4cfd3a5f93d17bfe34d24f6b8bb918e89c57425adbb503f500b558c","book/src/SUMMARY.md":"32f211f5aeb51a05b3c6a41a128bdb9e410ae84008a93e6b13442e45cd1c91d4","book/src/bail-and-ensure.md":"08fb463570143ec6568189468f1f54a7210b0a1ad66a57f7f7c36619831b4d72","book/src/custom-fail.md":"d4b1501201f9c54637bc40a2413e333f6f7d4fcfc8e3de74bf40d48eca0d4e41","book/src/derive-fail.md":"69916338286f970ae6709fb309bd4d80c321fea10b927f14efe402e3c0a5fdc9","book/src/error-errorkind.md":"40663de622bfb89a3dedcf6e093ec61eb1ab704d512d725e33f66aec38911757","book/src/error-msg.md":"2ab003bde8e88e0e3b9d1559d95e84b0ca7068522e324235bc4b2fdb88996d51","book/src/error.md":"c978778e7986e5febfb37e635525053ef73c534e4b6e9fc25deb576fdbdc111d","book/src/fail.md":"076ed560e9ad293bf99611f9407d4dc17310c42cf1652dd1f3f4be85fb5f17b8","book/src/guidance.md":"614cb85ae32c2b59119cd1db7eea008e50b051563c15ba1305f312fa2eeb3ac0","book/src/howto.md":"e18744011f5cc5779f5bb981ebd10f0af440c98398b2eb5af0ee27b9662ee410","book/src/intro.md":"eeb23e1ac3ccf75c4779603662910e96df647a02c73665a206dcc34c56d77eaf","book/src/string-custom-error.md":"f1d94e211f1d2dfb2d9d9a0d7eb745b8ea7f08f26243283fddb440cb099893ff","book/src/use-error.md":"a7f91e06eb676318da04a56e4b31c73dd7db888d43c215e1534a5bc415e98258","build-docs.sh":"27b611219773192b9f972b2054522481fd5c2c9419c155535f58d05bfc31fffe","examples/bail_ensure.rs":"fffc71e41f9fbbc2a7db453ef20779716007ed6bbb01e45fbcefb1e073745ecc","examples/error_as_cause.rs":"e0a6472455db5e484febc196667bc46c939d9f890bfe550ab7435d52b1ac6b2b","examples/simple.rs":"7a5fc0673b6bb5bd3716416a6545f7ff471d182292a2c8424cf18bc4a72f6936","examples/string_custom_error_pattern.rs":"23b5bf79a7219aa8a80484c0df70cd43d882b7dccd91de9ceb1aac05b0b1b4f2","src/as_fail.rs":"8a381a9624b3d28b45f92f8b527d7496e7a722c8aa0d632f0b23bbe0af98a76e","src/backtrace/internal.rs":"3fc4943061d4396c855571f134cd922f428cbe930689c8191376867b729d7b08","src/backtrace/mod.rs":"df3a348300775182c2780c542f119c989a6004cff841d817bdf7b93eef9a0dd3","src/box_std.rs":"224f3e3f48ad217ba34a54a62f608f9cba3ce95b176558684706c2f7fe72ce72","src/compat.rs":"97ed4fa49ac80c915b384b29a1bf678430cf1ea8ea61aa794a6014a1c3217762","src/context.rs":"d91ed85add638af7c9d481cb82ee6633c3678978951a5530c166fc156efac2e4","src/error/error_impl.rs":"063b9d9127f455b7555184af2576bc59e650add13c820be4960a3a5e5da0a9e4","src/error/error_impl_small.rs":"e6cbbd4d12e8eec1bd0f15713d33a0e525599268c9316dd40240eb7cd9e19a9d","src/error/mod.rs":"103621b313bd729c94054c5d88edd59d8c07311b650873e81b5021362647ae7a","src/error_message.rs":"2a45a3bd142e6547fc5da27c182fb690e2990de11db2a9b8ce63e50d9c589997","src/lib.rs":"0969303376ab328e16d7c64d690fc71a1e4eee00b413e79009cd590a2c4abbc0","src/macros.rs":"47cc9c73291e6edb3365d72b772d781215d123240f89a5fff914d23927781efa","src/result_ext.rs":"8088c3cb1481e81891014c99cc0f1b75f25a2f212b52ae856583e4c1f1901d09","src/small_error.rs":"652bf6ff2016d8e31b6ee709ad3efaff9f4e96d5aec8120ea3986a0bb8f57c54","src/sync_failure.rs":"a92a2e8b416196322718a4e7e1262f5b1b0a6be47b849d9a7e1050c1d33490db","travis.sh":"836024f7a56fdbe24a99ab9ce9350713831f4375a60f02593aad6637b766a330"},"package":"6dd377bcc1b1b7ce911967e3ec24fa19c3224394ec05b54aa7b083d498341ac7"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/failure/.gitlab-ci.yml b/rustc_deps/vendor/failure/.gitlab-ci.yml
deleted file mode 100644
index a9cbe35..0000000
--- a/rustc_deps/vendor/failure/.gitlab-ci.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-image: "rust:latest"
-
-pages:
-  script:
-    - sh ./build-docs.sh
-  artifacts:
-    paths:
-      - public
-  only:
-    - master
diff --git a/rustc_deps/vendor/failure/.travis.yml b/rustc_deps/vendor/failure/.travis.yml
deleted file mode 100644
index 61d8965..0000000
--- a/rustc_deps/vendor/failure/.travis.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-language: rust
-rust:
-    - 1.18.0
-    - stable
-    - beta
-    - nightly
-cache: cargo
-script:
-  - cargo test
-  - cargo test --features backtrace
-  - cargo check --no-default-features
diff --git a/rustc_deps/vendor/filetime/.cargo-checksum.json b/rustc_deps/vendor/filetime/.cargo-checksum.json
index 7eaeba5..ab61765 100644
--- a/rustc_deps/vendor/filetime/.cargo-checksum.json
+++ b/rustc_deps/vendor/filetime/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"de7306a8b64f9142510c9f88ba330802a27e8634605a06e6472a9611f2ee275c","Cargo.toml":"a5cea7aa9dda79d0e82651344a25ffedf08a94e52e12ee0479e1277ee0b047f3","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"c0d9555ee94f41fc4b6d4194d024414c14be92d6e4b5b835cff37120596f4ed7","appveyor.yml":"3a74394c3e3ef3b2c7d9458f526e47587977e98d026b63f00be29479075ff597","src/lib.rs":"03f51255843a6375f774162cb17b823e67dd654be4f386e20dc6eb1f54124767","src/redox.rs":"96562d89993e370bec863bdde093dceb7595a4f3a1716733f384c20b811780a4","src/unix/linux.rs":"6529e0e2f3927752ea70f935eee1e49f7e70faf3d6c0df4851b2edb07687b531","src/unix/mod.rs":"deae30257da1ae16d38e1bde920ed443239edd5b41116faaa2f872b56c6fa3c2","src/unix/utimensat.rs":"f5a0c83b43b2cc694e20f2375e87e26c10d726438c0e05e21751ddbd74dc8f6e","src/unix/utimes.rs":"9880b06f14a22ec5877bb6d78e1309ce89db2a0a43649f2a88207c9bb8708f36","src/windows.rs":"e24dd697c08c145f6e9bbbba89a8bd59ae787775c350f3637b2394218cd6c900"},"package":"da4b9849e77b13195302c174324b5ba73eec9b236b24c221a61000daefb95c5f"}
\ No newline at end of file
+{"files":{"Cargo.toml":"3b323403931c075114703f0df4834398a2f88dc6b41f1365d2de06c1a5157792","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"c0d9555ee94f41fc4b6d4194d024414c14be92d6e4b5b835cff37120596f4ed7","appveyor.yml":"3a74394c3e3ef3b2c7d9458f526e47587977e98d026b63f00be29479075ff597","src/lib.rs":"c312c37a1c249a59c6ec31d6670e5c16607a41ba948cd43313f42db213f42a09","src/redox.rs":"96562d89993e370bec863bdde093dceb7595a4f3a1716733f384c20b811780a4","src/unix/linux.rs":"6529e0e2f3927752ea70f935eee1e49f7e70faf3d6c0df4851b2edb07687b531","src/unix/mod.rs":"2bb8b60437ee758d04bd1684f8ac3ccf74577023a0914c12019a0fc1fe6480f3","src/unix/utimensat.rs":"f5a0c83b43b2cc694e20f2375e87e26c10d726438c0e05e21751ddbd74dc8f6e","src/unix/utimes.rs":"9880b06f14a22ec5877bb6d78e1309ce89db2a0a43649f2a88207c9bb8708f36","src/windows.rs":"e24dd697c08c145f6e9bbbba89a8bd59ae787775c350f3637b2394218cd6c900"},"package":"a2df5c1a8c4be27e7707789dc42ae65976e60b394afd293d1419ab915833e646"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/filetime/.travis.yml b/rustc_deps/vendor/filetime/.travis.yml
deleted file mode 100644
index ae935dc..0000000
--- a/rustc_deps/vendor/filetime/.travis.yml
+++ /dev/null
@@ -1,29 +0,0 @@
-language: rust
-sudo: false
-
-matrix:
-  include:
-    - rust: 1.21.0
-    - rust: stable
-    - os: osx
-    - rust: beta
-    - rust: nightly
-
-    - rust: nightly
-      before_script:
-        - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-      script:
-        - cargo doc --no-deps --all-features
-      after_success:
-        - travis-cargo --only nightly doc-upload
-
-script:
-  - cargo test
-
-env:
-  global:
-    secure: "MIaQyJIgy7VUoYHY7KbYtxpN/t+a2eWk8PihYctz+F+1PANgD6KbgbF9JW4ip5MYaehk7UWs++kPkHiAvJFKWo2BnQswc4digTUa9Vc2n8/C0d0Ec2zn1EUXH4fkeaMvIffn8QQUPwuNdE6khifSfG8Y42siqJF4zkuPKwaLrUo="
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/filetime/Cargo.toml b/rustc_deps/vendor/filetime/Cargo.toml
index 0ed1f53..7e0637c 100644
--- a/rustc_deps/vendor/filetime/Cargo.toml
+++ b/rustc_deps/vendor/filetime/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "filetime"
-version = "0.2.1"
+version = "0.2.4"
 authors = ["Alex Crichton <alex@alexcrichton.com>"]
 description = "Platform-agnostic accessors of timestamps in File metadata\n"
 homepage = "https://github.com/alexcrichton/filetime"
diff --git a/rustc_deps/vendor/filetime/src/lib.rs b/rustc_deps/vendor/filetime/src/lib.rs
index 7b7846e..f5f3119 100644
--- a/rustc_deps/vendor/filetime/src/lib.rs
+++ b/rustc_deps/vendor/filetime/src/lib.rs
@@ -182,6 +182,12 @@
     }
 }
 
+impl From<SystemTime> for FileTime {
+    fn from(time: SystemTime) -> FileTime {
+        FileTime::from_system_time(time)
+    }
+}
+
 /// Set the last access and modification times for a file on the filesystem.
 ///
 /// This function will set the `atime` and `mtime` metadata fields for a file
diff --git a/rustc_deps/vendor/filetime/src/unix/mod.rs b/rustc_deps/vendor/filetime/src/unix/mod.rs
index 8cca815..9c28aa4 100644
--- a/rustc_deps/vendor/filetime/src/unix/mod.rs
+++ b/rustc_deps/vendor/filetime/src/unix/mod.rs
@@ -15,9 +15,12 @@
     if #[cfg(target_os = "linux")] {
         mod linux;
         pub use self::linux::*;
+    // netbsd, openbsd and freebsd should use utimensat, but the call is not
+    // in the latest rust libc (0.2.43). as soon as a new version is available
+    // these target_os'es should be added back in.
     } else if #[cfg(any(target_os = "android",
                         target_os = "solaris",
-                        target_os = "netbsd",
+                        target_os = "emscripten",
                         target_os = "openbsd"))] {
         mod utimensat;
         pub use self::utimensat::*;
diff --git a/rustc_deps/vendor/flate2/.cargo-checksum.json b/rustc_deps/vendor/flate2/.cargo-checksum.json
index a5cb22c..a1010ce 100644
--- a/rustc_deps/vendor/flate2/.cargo-checksum.json
+++ b/rustc_deps/vendor/flate2/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"1280d59a59d2559b75fc720b623046f698f5f6aaf22a47e268f321a222f03fe8","Cargo.toml":"01897cf6527c394116e2b60014987ae536ee93f657c21ec0553029673de550a2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"29b1dac7c214deaa3f4f8305102cbc166ac9015a2d3d641f3a539103a97b6c8a","appveyor.yml":"7293e690b6b1fb75cbab1f72ffc5077dd145c806282969b595cc1a82ce1a2e62","examples/deflatedecoder-bufread.rs":"286995f7fa968c3cb935f4a9436db035691112fd1999ad001fb17da1a76162be","examples/deflatedecoder-read.rs":"7d7347a31317d288291847369032cefad5688defe6043a3f0d2a72b8567eb056","examples/deflatedecoder-write.rs":"23723a260ac6916243089666d25e2d7c5fdf390fb2fa20d0c2a957647a0e1880","examples/deflateencoder-bufread.rs":"c9a798336ed81c104fc01c3620380bb3369af90a710a89b19c2402f25c25d375","examples/deflateencoder-read.rs":"3af2fe62fb464c2c38a16099c38ce6ce510356ac47de2fc8a8a46ad1660992d7","examples/deflateencoder-write.rs":"0c6d3590b925a731bdd7e4a899ff5783539a4f48f88a8d95e7acecde5d426521","examples/gzbuilder.rs":"d0fe0fc8b6f302f35af80f61d2cbb4e55b1d511f7894e06756bda0d53f9505f9","examples/gzdecoder-bufread.rs":"2ec57910cb86a03566476f9b65562c2bfc661c7e094fb5b847d84e4127b7dd8d","examples/gzdecoder-read.rs":"af29581f5eadd76f1079b3da73b5cd97557c1abe435014ecad4b3be22518a2bb","examples/gzdecoder-write.rs":"4b14123f9e2d5aa08d1d94fdc911ecc0728cdb9d68888ad2bfd34545975ab6a2","examples/gzencoder-bufread.rs":"ad79e9f8630359ed21b74a1431d49fdb08c0673df7b21e98d0cad05b29357460","examples/gzencoder-read.rs":"b37c7d18e58c916bdaff4d698cbfc7fe99c03b7d440eb386694a268dbc938134","examples/gzencoder-write.rs":"3dc712c3100caab0e29bd8c48314a964392cd2f2443e988dfbe5416909fb5e1d","examples/gzmultidecoder-bufread.rs":"b55840b1139c7351cff67320c88bc8f2e4e74eecc20ed617deb48d27c855a5a4","examples/gzmultidecoder-read.rs":"a5cd59f0ea2543ce8c6ac8a77128a9f9242b0eca27dfd82c7842a2d63930e874","examples/hello_world.txt":"d2a84f4b8b650937ec8f73cd8be2c74add5a911ba64df27458ed8229da804a26","examples/zlibdecoder-bufread.rs":"688999ef801a8ecccb741eb9a6e6a89fbc5c9857bc1fdffd4b613d4522f47407","examples/zlibdecoder-read.rs":"c8d414640ae3e7c356ac06ae3e3802ae88b2db7b40be4f567598335e90f969f4","examples/zlibdecoder-write.rs":"fd581a7bdfb992eba5b96c66eb9e143dabd6970762e8f92fd05215b1566f915c","examples/zlibencoder-bufread.rs":"667d3bdc83878e97d4faae6c820693339799989db1031e976dc52d7bc1e119ce","examples/zlibencoder-read.rs":"8f3e87c001a028f5f38495c1ca4b7b60a92429b0d93f783d7be5c02c4d0043e2","examples/zlibencoder-write.rs":"03e4559325a749ee378739ddc2fb9d43afcf3d60a7be714d0708ec590b2d50af","src/bufreader.rs":"7fc0b74ca751e9e11689d3e57abc3aadbda92f25f2a9a80fca009f43a112642d","src/crc.rs":"2f98a8b14e4e8f1ed6fadb87f62e2c5c23f6019847a1bd5275414bc92f4f061b","src/deflate/bufread.rs":"ed1b17ebeae9dd5549a5c6dfdc983f6b0becd8a588e4674ba36ec463f4b0aad5","src/deflate/mod.rs":"b9123e045fcb205d4f08cc76e904b67d83809349f5699e0ae95d924b73bb4050","src/deflate/read.rs":"8a579ab97396a22cb9196743753d7d6f1c4cc4e7c7ed8f86e4f2d3f6971796cb","src/deflate/write.rs":"3852f51611562237e35791b80dc450558949c173fa875d4b91e13c1d18cf23a7","src/ffi.rs":"de766ce6bfef61b54296a0418ca09330957e39c74042c6294d151743fe9d5cfb","src/gz/bufread.rs":"b5bf00737dee1b4ffdbe78436726a5a0b12272bf0eadb9e4ab5464bf47eccfd4","src/gz/mod.rs":"b37dde138590a047572f5cf3c5a3d3eaa9032ffb9b9a5dbe567c03bddf56f478","src/gz/read.rs":"d5e5d127a9083ee5ce5a162a2c03965b7fbabc1ca3e221d74bdd68349ba7a7ce","src/gz/write.rs":"3a510433f6f76004599a201a18790c5b2451c1742967665ba51513d79c4f3f0d","src/lib.rs":"74491cc75445e677413537bcd958f9284967d1c2c4f1d0f2ddb79981e844f507","src/mem.rs":"9e1a4f24b04fac9c4230bc93389997450f2dc24acd3c9df72d66dc9af3d516cb","src/zio.rs":"98133cafdc0014e075c14cd8a271cfd5e67a4ad4572e798f6f62bbe6425d0cff","src/zlib/bufread.rs":"8eff1bb0c2b557ca0428a087f81e5c93b6e5e71176930eb19fc73322a4b7092c","src/zlib/mod.rs":"7e565ec477d26e80eecd583148a21ba778ebb6eb625388f884f95fc623b3db4f","src/zlib/read.rs":"dd34b36a33257d428b449b41738dae79faf4d02955aea4be905fed313d3cf38f","src/zlib/write.rs":"abd3a640d09e82a890f66d18fd4618ad09d7e25c9e1c23fcd3532a7003d742b6","tests/corrupt-file.gz":"083dd284aa1621916a2d0f66ea048c8d3ba7a722b22d0d618722633f51e7d39c","tests/early-flush.rs":"5b12ab43ddb2dbc458b2fdf05fe2245bf8abea554756dfa7bc64a095adfde365","tests/empty-read.rs":"45477d316f77a048d747e9d18292abfec0cac667768385c8a061e18fd1240238","tests/good-file.gz":"87296963e53024a74752179ce7e54087565d358a85d3e65c3b37ef36eaa3d4a6","tests/good-file.txt":"bc4e03658a441fe2ad2df7cd2197144b87e41696f01e327b380e869cd9b485a0","tests/gunzip.rs":"18c2509e8795337faa955bd8429210217ecc6081e1647d3968d10e01ae876bb0","tests/multi.gz":"efa3341da052f95056314cc6920e02a3da15bdef30234b2552fb407812db5cc6","tests/multi.txt":"dbea9325179efe46ea2add94f7b6b745ca983fabb208dc6d34aa064623d7ee23","tests/tokio.rs":"1d256e3d38abc6a9dde87d9ec78dc94ab56670e102d64e2ed649a46ff0d4d615","tests/zero-write.rs":"ff8d0349a540b54363c55807c5fd7fbbdc363d08a536d35a3a40f0ce92c16489"},"package":"3b0c7353385f92079524de3b7116cf99d73947c08a7472774e9b3b04bff3b901"}
\ No newline at end of file
+{"files":{"Cargo.toml":"01897cf6527c394116e2b60014987ae536ee93f657c21ec0553029673de550a2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"29b1dac7c214deaa3f4f8305102cbc166ac9015a2d3d641f3a539103a97b6c8a","appveyor.yml":"7293e690b6b1fb75cbab1f72ffc5077dd145c806282969b595cc1a82ce1a2e62","examples/deflatedecoder-bufread.rs":"286995f7fa968c3cb935f4a9436db035691112fd1999ad001fb17da1a76162be","examples/deflatedecoder-read.rs":"7d7347a31317d288291847369032cefad5688defe6043a3f0d2a72b8567eb056","examples/deflatedecoder-write.rs":"23723a260ac6916243089666d25e2d7c5fdf390fb2fa20d0c2a957647a0e1880","examples/deflateencoder-bufread.rs":"c9a798336ed81c104fc01c3620380bb3369af90a710a89b19c2402f25c25d375","examples/deflateencoder-read.rs":"3af2fe62fb464c2c38a16099c38ce6ce510356ac47de2fc8a8a46ad1660992d7","examples/deflateencoder-write.rs":"0c6d3590b925a731bdd7e4a899ff5783539a4f48f88a8d95e7acecde5d426521","examples/gzbuilder.rs":"d0fe0fc8b6f302f35af80f61d2cbb4e55b1d511f7894e06756bda0d53f9505f9","examples/gzdecoder-bufread.rs":"2ec57910cb86a03566476f9b65562c2bfc661c7e094fb5b847d84e4127b7dd8d","examples/gzdecoder-read.rs":"af29581f5eadd76f1079b3da73b5cd97557c1abe435014ecad4b3be22518a2bb","examples/gzdecoder-write.rs":"4b14123f9e2d5aa08d1d94fdc911ecc0728cdb9d68888ad2bfd34545975ab6a2","examples/gzencoder-bufread.rs":"ad79e9f8630359ed21b74a1431d49fdb08c0673df7b21e98d0cad05b29357460","examples/gzencoder-read.rs":"b37c7d18e58c916bdaff4d698cbfc7fe99c03b7d440eb386694a268dbc938134","examples/gzencoder-write.rs":"3dc712c3100caab0e29bd8c48314a964392cd2f2443e988dfbe5416909fb5e1d","examples/gzmultidecoder-bufread.rs":"b55840b1139c7351cff67320c88bc8f2e4e74eecc20ed617deb48d27c855a5a4","examples/gzmultidecoder-read.rs":"a5cd59f0ea2543ce8c6ac8a77128a9f9242b0eca27dfd82c7842a2d63930e874","examples/hello_world.txt":"d2a84f4b8b650937ec8f73cd8be2c74add5a911ba64df27458ed8229da804a26","examples/zlibdecoder-bufread.rs":"688999ef801a8ecccb741eb9a6e6a89fbc5c9857bc1fdffd4b613d4522f47407","examples/zlibdecoder-read.rs":"c8d414640ae3e7c356ac06ae3e3802ae88b2db7b40be4f567598335e90f969f4","examples/zlibdecoder-write.rs":"fd581a7bdfb992eba5b96c66eb9e143dabd6970762e8f92fd05215b1566f915c","examples/zlibencoder-bufread.rs":"667d3bdc83878e97d4faae6c820693339799989db1031e976dc52d7bc1e119ce","examples/zlibencoder-read.rs":"8f3e87c001a028f5f38495c1ca4b7b60a92429b0d93f783d7be5c02c4d0043e2","examples/zlibencoder-write.rs":"03e4559325a749ee378739ddc2fb9d43afcf3d60a7be714d0708ec590b2d50af","src/bufreader.rs":"7fc0b74ca751e9e11689d3e57abc3aadbda92f25f2a9a80fca009f43a112642d","src/crc.rs":"2f98a8b14e4e8f1ed6fadb87f62e2c5c23f6019847a1bd5275414bc92f4f061b","src/deflate/bufread.rs":"ed1b17ebeae9dd5549a5c6dfdc983f6b0becd8a588e4674ba36ec463f4b0aad5","src/deflate/mod.rs":"b9123e045fcb205d4f08cc76e904b67d83809349f5699e0ae95d924b73bb4050","src/deflate/read.rs":"8a579ab97396a22cb9196743753d7d6f1c4cc4e7c7ed8f86e4f2d3f6971796cb","src/deflate/write.rs":"3852f51611562237e35791b80dc450558949c173fa875d4b91e13c1d18cf23a7","src/ffi.rs":"de766ce6bfef61b54296a0418ca09330957e39c74042c6294d151743fe9d5cfb","src/gz/bufread.rs":"b5bf00737dee1b4ffdbe78436726a5a0b12272bf0eadb9e4ab5464bf47eccfd4","src/gz/mod.rs":"b37dde138590a047572f5cf3c5a3d3eaa9032ffb9b9a5dbe567c03bddf56f478","src/gz/read.rs":"d5e5d127a9083ee5ce5a162a2c03965b7fbabc1ca3e221d74bdd68349ba7a7ce","src/gz/write.rs":"3a510433f6f76004599a201a18790c5b2451c1742967665ba51513d79c4f3f0d","src/lib.rs":"74491cc75445e677413537bcd958f9284967d1c2c4f1d0f2ddb79981e844f507","src/mem.rs":"9e1a4f24b04fac9c4230bc93389997450f2dc24acd3c9df72d66dc9af3d516cb","src/zio.rs":"98133cafdc0014e075c14cd8a271cfd5e67a4ad4572e798f6f62bbe6425d0cff","src/zlib/bufread.rs":"8eff1bb0c2b557ca0428a087f81e5c93b6e5e71176930eb19fc73322a4b7092c","src/zlib/mod.rs":"7e565ec477d26e80eecd583148a21ba778ebb6eb625388f884f95fc623b3db4f","src/zlib/read.rs":"dd34b36a33257d428b449b41738dae79faf4d02955aea4be905fed313d3cf38f","src/zlib/write.rs":"abd3a640d09e82a890f66d18fd4618ad09d7e25c9e1c23fcd3532a7003d742b6","tests/corrupt-file.gz":"083dd284aa1621916a2d0f66ea048c8d3ba7a722b22d0d618722633f51e7d39c","tests/early-flush.rs":"5b12ab43ddb2dbc458b2fdf05fe2245bf8abea554756dfa7bc64a095adfde365","tests/empty-read.rs":"45477d316f77a048d747e9d18292abfec0cac667768385c8a061e18fd1240238","tests/good-file.gz":"87296963e53024a74752179ce7e54087565d358a85d3e65c3b37ef36eaa3d4a6","tests/good-file.txt":"bc4e03658a441fe2ad2df7cd2197144b87e41696f01e327b380e869cd9b485a0","tests/gunzip.rs":"18c2509e8795337faa955bd8429210217ecc6081e1647d3968d10e01ae876bb0","tests/multi.gz":"efa3341da052f95056314cc6920e02a3da15bdef30234b2552fb407812db5cc6","tests/multi.txt":"dbea9325179efe46ea2add94f7b6b745ca983fabb208dc6d34aa064623d7ee23","tests/tokio.rs":"1d256e3d38abc6a9dde87d9ec78dc94ab56670e102d64e2ed649a46ff0d4d615","tests/zero-write.rs":"ff8d0349a540b54363c55807c5fd7fbbdc363d08a536d35a3a40f0ce92c16489"},"package":"3b0c7353385f92079524de3b7116cf99d73947c08a7472774e9b3b04bff3b901"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/flate2/.travis.yml b/rustc_deps/vendor/flate2/.travis.yml
deleted file mode 100644
index 14da335..0000000
--- a/rustc_deps/vendor/flate2/.travis.yml
+++ /dev/null
@@ -1,53 +0,0 @@
-language: rust
-sudo: false
-
-matrix:
-  include:
-    - rust: stable
-    - os: osx
-    - rust: beta
-    - rust: nightly
-
-    - rust: stable
-      script: cargo run --manifest-path systest/Cargo.toml
-
-    - rust: nightly
-      install: rustup target add wasm32-unknown-unknown
-      script: cargo build --target wasm32-unknown-unknown
-
-    - rust: stable
-      env: RUST_BACKEND=1
-      script:
-        - cargo test --features rust_backend
-        - cargo test --features rust_backend --no-default-features
-
-    - rust: nightly
-      before_script:
-        - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-      script:
-        - cargo doc --no-deps --all-features
-      after_success:
-        - travis-cargo --only nightly doc-upload
-
-  allow_failures:
-    - env: RUST_BACKEND=1
-
-script:
-  - cargo build
-  - rustdoc --test README.md -L target/debug/deps --extern flate2=target/debug/libflate2.rlib
-  - cargo test
-  - cargo test --features zlib
-  - cargo test --features tokio
-  - cargo test --features 'tokio zlib'
-  - cargo test --features zlib --no-default-features
-  - cargo clean && cargo build
-  - cargo doc --no-deps
-  - cargo doc --no-deps --manifest-path=miniz-sys/Cargo.toml
-
-env:
-  global:
-    secure: "PHVT7IaeP5nQQVwGHKwqCYBDp0QyetSlER7se2j2Xgfx+lw3Bu6VWH6VF04B636Gb0tHPN/sUCXSgGRcvDuy6XFOev4LfynoYxNKgHJYg2E34EP2QLwsFfnvE4iujaG3GJk3o935Y7OYGv2OP1HeG4Mv6JhQK0GLnNDBZQ65kWI="
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/fnv/.cargo-checksum.json b/rustc_deps/vendor/fnv/.cargo-checksum.json
index f8b68ff..b1fb191 100644
--- a/rustc_deps/vendor/fnv/.cargo-checksum.json
+++ b/rustc_deps/vendor/fnv/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"29b74b95210896ce634c11a9037638668473b5a1b3b1716c505cb04dbb6341fa","Cargo.toml":"8a89e16dc6b373aa151fb2d1221c699b39b1dd5599aa616897fa85511b71104f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"65fdb6c76cd61612070c066eec9ecdb30ee74fb27859d0d9af58b9f499fd0c3e","README.md":"9398b0785fdaf32fe61dca3d6f16e69cf53ab2911c9435053d1ec962cd92b8fa","lib.rs":"0303c8c75e9cf35f5379f67cfc003ba0b51e9643dc8f3bd346322595d7685d97"},"package":"2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"}
\ No newline at end of file
+{"files":{"Cargo.toml":"8a89e16dc6b373aa151fb2d1221c699b39b1dd5599aa616897fa85511b71104f","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"65fdb6c76cd61612070c066eec9ecdb30ee74fb27859d0d9af58b9f499fd0c3e","README.md":"9398b0785fdaf32fe61dca3d6f16e69cf53ab2911c9435053d1ec962cd92b8fa","lib.rs":"0303c8c75e9cf35f5379f67cfc003ba0b51e9643dc8f3bd346322595d7685d97"},"package":"2fad85553e09a6f881f739c29f0b00b0f01357c743266d478b68951ce23285f3"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/fnv/.travis.yml b/rustc_deps/vendor/fnv/.travis.yml
deleted file mode 100644
index 9c58f03..0000000
--- a/rustc_deps/vendor/fnv/.travis.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-language: rust
-rust:
-  - nightly
-  - beta
-  - stable
-
-notifications:
-  webhooks: http://build.servo.org:54856/travis
diff --git a/rustc_deps/vendor/font-rs/.cargo-checksum.json b/rustc_deps/vendor/font-rs/.cargo-checksum.json
index 715ec6f..4a8f87b 100644
--- a/rustc_deps/vendor/font-rs/.cargo-checksum.json
+++ b/rustc_deps/vendor/font-rs/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"3dd668ecd6aff316698f4e462e0a81d8d6788b0068f1c3a02cfe6848f86c16b0","CONTRIBUTING.md":"8f3a78ee312b1d3010d7061cf08a92a54235452e9834d2b541b292ad8fe56611","Cargo.toml":"0d0efc6abf637e2437f07e2b4c05ebba3bfb7de97a5356ffbde852b3325db632","LICENSE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","README.md":"6bd80ec4463ceb274f3ca347098fbc5e58866f734412f2dd6a145deae0ba1cbc","benches/glyph.rs":"7dfc29a437b7f06717cd6483c670ac00343ba3cddb9a68502da1e227d0991ded","benches/raster.rs":"01cc1879a103ca6508eeb2f4268b559badd16a96dd68c4f6c8f77e5e05ff6eda","build.rs":"bef26b793894a54bab137c229e0eab9575e85abe6dfaa124c32c380755001cbf","examples/draw_shape.rs":"10c03b77650cf393f1fa9fafadc30fa6febfb44652d23937be2166528fb7f0a6","examples/render.rs":"dc4069ac340212fbb65db3d0fd47668fabba2da8d34fbbaf1bb72657df468e2a","fonts/notomono-hinted/LICENSE_OFL.txt":"6a73f9541c2de74158c0e7cf6b0a58ef774f5a780bf191f2d7ec9cc53efe2bf2","fonts/notomono-hinted/NotoMono-Regular.ttf":"41fd7ccc82375e2a1e47f0cc2c941c14d7c99ba2f57cf69c9f738d07fb257686","fonts/notomono-hinted/README":"549bf0ba6b9cd63236f4f02fb217a53384984df7bced8f268ed9bb2e7839e317","rustfmt.toml":"f44b130f9ce2d1ecccffbe0c81ea4dd447c13d5e6368165894f6a51f3c5bae2c","src/accumulate.c":"8cabb5ab5c310a9cb162607f21741990d797fc7936153a140a59c48bb3ba0c19","src/accumulate.rs":"7080ab0b700f22affd5878c196fa1a0fd9132de275fba120f2494668d029fac8","src/font.rs":"e47a3ddb23b5566d9481fa54c7b75187198554bc0835d216ffc0322df2cee5e3","src/geom.rs":"38c7d2e24f64f286bfa92ffbd035462084a9fb3d046f46964175de643548102c","src/lib.rs":"f06fd1c6b52ab3a7555fe1bf3551c655003e6363de4025dcc45978eb0414311e","src/macros.rs":"1487e7d99cc29064b58fddb144434fab84b599aaae2f928d6a3ad9c52d6e05a2","src/raster.rs":"1ddf13684700e71bdcea44b90bef447374457c8b26f334fa53586b95238e252f"},"package":"33939d997b0ef798cc92c9cc49a535c9b085273e121cc8e8281561be1fd76cd2"}
\ No newline at end of file
+{"files":{"CONTRIBUTING.md":"8f3a78ee312b1d3010d7061cf08a92a54235452e9834d2b541b292ad8fe56611","Cargo.toml":"0d0efc6abf637e2437f07e2b4c05ebba3bfb7de97a5356ffbde852b3325db632","LICENSE":"cfc7749b96f63bd31c3c42b5c471bf756814053e847c10f3eb003417bc523d30","README.md":"6bd80ec4463ceb274f3ca347098fbc5e58866f734412f2dd6a145deae0ba1cbc","benches/glyph.rs":"7dfc29a437b7f06717cd6483c670ac00343ba3cddb9a68502da1e227d0991ded","benches/raster.rs":"01cc1879a103ca6508eeb2f4268b559badd16a96dd68c4f6c8f77e5e05ff6eda","build.rs":"bef26b793894a54bab137c229e0eab9575e85abe6dfaa124c32c380755001cbf","examples/draw_shape.rs":"10c03b77650cf393f1fa9fafadc30fa6febfb44652d23937be2166528fb7f0a6","examples/render.rs":"dc4069ac340212fbb65db3d0fd47668fabba2da8d34fbbaf1bb72657df468e2a","fonts/notomono-hinted/LICENSE_OFL.txt":"6a73f9541c2de74158c0e7cf6b0a58ef774f5a780bf191f2d7ec9cc53efe2bf2","fonts/notomono-hinted/NotoMono-Regular.ttf":"41fd7ccc82375e2a1e47f0cc2c941c14d7c99ba2f57cf69c9f738d07fb257686","fonts/notomono-hinted/README":"549bf0ba6b9cd63236f4f02fb217a53384984df7bced8f268ed9bb2e7839e317","rustfmt.toml":"f44b130f9ce2d1ecccffbe0c81ea4dd447c13d5e6368165894f6a51f3c5bae2c","src/accumulate.c":"8cabb5ab5c310a9cb162607f21741990d797fc7936153a140a59c48bb3ba0c19","src/accumulate.rs":"7080ab0b700f22affd5878c196fa1a0fd9132de275fba120f2494668d029fac8","src/font.rs":"e47a3ddb23b5566d9481fa54c7b75187198554bc0835d216ffc0322df2cee5e3","src/geom.rs":"38c7d2e24f64f286bfa92ffbd035462084a9fb3d046f46964175de643548102c","src/lib.rs":"f06fd1c6b52ab3a7555fe1bf3551c655003e6363de4025dcc45978eb0414311e","src/macros.rs":"1487e7d99cc29064b58fddb144434fab84b599aaae2f928d6a3ad9c52d6e05a2","src/raster.rs":"1ddf13684700e71bdcea44b90bef447374457c8b26f334fa53586b95238e252f"},"package":"33939d997b0ef798cc92c9cc49a535c9b085273e121cc8e8281561be1fd76cd2"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/font-rs/.travis.yml b/rustc_deps/vendor/font-rs/.travis.yml
deleted file mode 100644
index 8cd873b..0000000
--- a/rustc_deps/vendor/font-rs/.travis.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-cache:
-  - apt
-  - cargo
-
-os:
-  - linux
-
-script:
-  - cargo build --verbose --features ""
-  - cargo test --verbose --features ""
-  - cargo build --verbose --features sse
-  - cargo test --verbose --features sse
-  - |
-    if [[ "$TRAVIS_RUST_VERSION" == "nightly" ]]; then
-      cargo bench --features ""
-      cargo bench --features "sse"
-    fi
diff --git a/rustc_deps/vendor/futures-core-preview/.cargo-checksum.json b/rustc_deps/vendor/futures-core-preview/.cargo-checksum.json
index 65489c7..1329bfa 100644
--- a/rustc_deps/vendor/futures-core-preview/.cargo-checksum.json
+++ b/rustc_deps/vendor/futures-core-preview/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"1d2ef3b537ed5321b988f4d35b69cce4bd868aa151fb50ce0a74c3e318244194","Cargo.toml":"c08ed65b9851b1237e37d51700bdcbfbd3c4109a2ba9df1f529741723d4e4d7c","LICENSE-APACHE":"275c491d6d1160553c32fd6127061d7f9606c3ea25abfad6ca3f6ed088785427","LICENSE-MIT":"6652c868f35dfe5e8ef636810a4e576b9d663f3a17fb0f5613ad73583e1b88fd","src/future/future_obj.rs":"59fa8255e1eee57f933845f28a6f8023a079cedb5d189507755a657759fcf9ae","src/future/mod.rs":"556b1194b5af1414e43dfd160495f0c0e6af36735e2cb4ab52acc7aea2e1e113","src/lib.rs":"e085c217e978dfcd64a3434e9c1456cd52d71e793b92b810be4d80fdb8d367ee","src/stream/mod.rs":"a85e2966a19ed058e1485b4a6ad32203bce613af84164204bf35c99c81e0c7ea","src/stream/stream_obj.rs":"a387d3540e65579080997e61aed5633c25542b1973cc3b115726afe026e06bfb","src/task/mod.rs":"497186e4789567daa6c2f5fc1e3a8140877ae8e9e67e09d8bb3a50b976891268","src/task/spawn.rs":"733572db0157b98e3b77b4af6e0b7d9b209fe6c9da50db773cd876d7ce344b8d"},"package":"e5fea6d4920bf1745d87f8624abdd38ed03fb5b644767b84a0de882fe46c4153"}
\ No newline at end of file
+{"files":{"Cargo.toml":"c08ed65b9851b1237e37d51700bdcbfbd3c4109a2ba9df1f529741723d4e4d7c","LICENSE-APACHE":"275c491d6d1160553c32fd6127061d7f9606c3ea25abfad6ca3f6ed088785427","LICENSE-MIT":"6652c868f35dfe5e8ef636810a4e576b9d663f3a17fb0f5613ad73583e1b88fd","src/future/future_obj.rs":"59fa8255e1eee57f933845f28a6f8023a079cedb5d189507755a657759fcf9ae","src/future/mod.rs":"556b1194b5af1414e43dfd160495f0c0e6af36735e2cb4ab52acc7aea2e1e113","src/lib.rs":"e085c217e978dfcd64a3434e9c1456cd52d71e793b92b810be4d80fdb8d367ee","src/stream/mod.rs":"a85e2966a19ed058e1485b4a6ad32203bce613af84164204bf35c99c81e0c7ea","src/stream/stream_obj.rs":"a387d3540e65579080997e61aed5633c25542b1973cc3b115726afe026e06bfb","src/task/mod.rs":"497186e4789567daa6c2f5fc1e3a8140877ae8e9e67e09d8bb3a50b976891268","src/task/spawn.rs":"733572db0157b98e3b77b4af6e0b7d9b209fe6c9da50db773cd876d7ce344b8d"},"package":"e5fea6d4920bf1745d87f8624abdd38ed03fb5b644767b84a0de882fe46c4153"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/futures-core-preview/.cargo_vcs_info.json b/rustc_deps/vendor/futures-core-preview/.cargo_vcs_info.json
deleted file mode 100644
index 33118c3..0000000
--- a/rustc_deps/vendor/futures-core-preview/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "6d9733c5e1d4adc7d21a94bcf19e9b8214f360a0"
-  }
-}
diff --git a/rustc_deps/vendor/futures-sink-preview/.cargo-checksum.json b/rustc_deps/vendor/futures-sink-preview/.cargo-checksum.json
index 87aadd1..f4105e6 100644
--- a/rustc_deps/vendor/futures-sink-preview/.cargo-checksum.json
+++ b/rustc_deps/vendor/futures-sink-preview/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"1d2ef3b537ed5321b988f4d35b69cce4bd868aa151fb50ce0a74c3e318244194","Cargo.toml":"5f811a2cf4db87833a45ead12010ea60a6f1a559530a253cefbcccdd6fb3f654","LICENSE-APACHE":"275c491d6d1160553c32fd6127061d7f9606c3ea25abfad6ca3f6ed088785427","LICENSE-MIT":"6652c868f35dfe5e8ef636810a4e576b9d663f3a17fb0f5613ad73583e1b88fd","src/channel_impls.rs":"eea5cdf5da95c694fe95cc3809a5153ae6c926b2b54582ee7d2e2bdeb2d5ce4c","src/lib.rs":"d80fa95e0b7bd0fed1a58dd341119cc8bd2d687a93c8b4adf0c74417d4f66f0d"},"package":"cd7799480a224d80e9e915a6bf8bff27498e8210b831f5a513af09d5c1db2e36"}
\ No newline at end of file
+{"files":{"Cargo.toml":"5f811a2cf4db87833a45ead12010ea60a6f1a559530a253cefbcccdd6fb3f654","LICENSE-APACHE":"275c491d6d1160553c32fd6127061d7f9606c3ea25abfad6ca3f6ed088785427","LICENSE-MIT":"6652c868f35dfe5e8ef636810a4e576b9d663f3a17fb0f5613ad73583e1b88fd","src/channel_impls.rs":"eea5cdf5da95c694fe95cc3809a5153ae6c926b2b54582ee7d2e2bdeb2d5ce4c","src/lib.rs":"d80fa95e0b7bd0fed1a58dd341119cc8bd2d687a93c8b4adf0c74417d4f66f0d"},"package":"cd7799480a224d80e9e915a6bf8bff27498e8210b831f5a513af09d5c1db2e36"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/futures-sink-preview/.cargo_vcs_info.json b/rustc_deps/vendor/futures-sink-preview/.cargo_vcs_info.json
deleted file mode 100644
index 33118c3..0000000
--- a/rustc_deps/vendor/futures-sink-preview/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "6d9733c5e1d4adc7d21a94bcf19e9b8214f360a0"
-  }
-}
diff --git a/rustc_deps/vendor/futures/.cargo-checksum.json b/rustc_deps/vendor/futures/.cargo-checksum.json
index 6c92479..c3c9bbf 100644
--- a/rustc_deps/vendor/futures/.cargo-checksum.json
+++ b/rustc_deps/vendor/futures/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"78be1e09bb9fa7465e4c6ab149cf4cca8eca89c584afa7d8a385e1785c9096f2","CHANGELOG.md":"081044d6883e82c3c5a288e0cf0e839acfffbc329c6170cecbf436d163b3390c","Cargo.toml":"a16be26e16b8bd9838eed9a89adb6f3e3934e428ba4b0463714b3f3b7326a75a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"69036b033e4bb951821964dbc3d9b1efe6913a6e36d9c1f206de4035a1a85cc4","README.md":"52248a83513c979d501093d0621ff76a291e169fcdbc2ec2d6a25672fd86fe71","appveyor.yml":"7b8de5d694cb575649354d7fc3eff0781e2c5c412df4bc8a90b36b6fdb55bfab","benches/bilock.rs":"60b9e0814b8396e0320d299273c6f91c2ccc09a2bb59eec92df74a1f0919e54f","benches/futures_unordered.rs":"fa2d3b5e6cdfe1e941d78c119a696fb583341fa0a0895ec2692e6d374ceb9a0e","benches/poll.rs":"ca369079c4db366a180be22f406eaf8e94e2e771c02568eb35d89e63093006cf","benches/sync_mpsc.rs":"8d4dbf78afcdf61fc72da326c4810bc797462771707d079f95a7f75aa2ec0ec0","benches/thread_notify.rs":"1992b1e2b352fbc15a611d1318ac1bf6f19318d769086d55c80e6863f1b0e106","src/executor.rs":"80466c075daf030e07cc0d053618837cb73c07f5399b3d65016925f4488adb73","src/future/and_then.rs":"15653d392d331a1fc4619129f737acc28525c88d1675b7fcea6ed27c5b1bf302","src/future/catch_unwind.rs":"dfef6b6a66c09574338046cf23b0c6aacd8200872d512b831d6dc12038f05298","src/future/chain.rs":"4d712e989e079f4164d5d9fe3bb522d521094b0d8083ee639350570444e5bb93","src/future/either.rs":"d8d3a4686dfe0068cc35ee452268ff2406e1e6adfddd3f0841988bfa6489ca5d","src/future/empty.rs":"b549a1ca0f21bc6d1a26d9063a9a60deb9235ff7eff5db915050115fed91a9c7","src/future/flatten.rs":"7eb15429fcc749326371fe571e1f7d294d7b83f7557e6e1971e2206180253d65","src/future/flatten_stream.rs":"cf914425c3606b61c046df5c43d64266d6f2328693e4122441f9bbcf7cb0a4e1","src/future/from_err.rs":"a1f42d95f7b52e80c2e5a03b44cbce0efbe5fc486dfe33d799b74ab9ba9057ab","src/future/fuse.rs":"3920c819b850c8f04b3868eae70dc0d3e6802ff0b517501f3aa5057a3b632102","src/future/inspect.rs":"89c362d8402dddd784bcc54e62ca27657ca8108e1ae8de5a7237e08650e10636","src/future/into_stream.rs":"0fa6bc4d70e8b4d75cf45fba53b39f033b87574103fffea4090b78f049bf43d0","src/future/join.rs":"b1dcefb03b1cb4e609ad2e79ba9a6cfab24235d7a4fff7fb9daf2c8fbf0f3d70","src/future/join_all.rs":"30fc27cbc1248046937b441a165a911e9ed1cd887ad6f3aeeb573b59c43e9cbf","src/future/lazy.rs":"1a2025bae3675fb682cefbf8a88bbb7a7519cfdee42dd6b3049a4d2b7ab8b5b1","src/future/loop_fn.rs":"5bd952247ae4e9d31dff77386bbd3700f596da136ea53e9e9944266af3f08688","src/future/map.rs":"91e148d9adaea929b85ede63c71fb07ef9b5611db906a13eedad2cf551745b47","src/future/map_err.rs":"2c8e87fa8ff56061722db6c69aaba588e6df6835a4e2fe84826f0bd4fed2e007","src/future/mod.rs":"362679ce9e4d55952eced756b8b69c017b966d2027a2c729ce20c382f1f86109","src/future/option.rs":"93270226cadcfa349250023e2070e687cf595831f427904ca744f7bc50342ded","src/future/or_else.rs":"444567101c4c437b184aa2e2eec0cf4363af442c0afc58d6508d3d2ac86489a9","src/future/poll_fn.rs":"817bfb75e7c43ca96a53e8cc9f48606c92c3c6742b07a732ce79a8f9b7bf8808","src/future/result.rs":"cc62c2377defb7b53aa859bf05c41c52a9cf8583378b7072bb2b45232d5fc9c5","src/future/select.rs":"73efd98004d5d8c46607bf770ff07a810bcdbe05cce0e8e4f41f5e659fd44203","src/future/select2.rs":"cfbbf3a9794109c56a3703456fae6111826bc25f98f2f36b234d483eeeeab482","src/future/select_all.rs":"b009e57ac241a3aba78db0bb751432cb99c1e91b8bae1b3baf225921f0daa441","src/future/select_ok.rs":"4884896914d8903edbfa12b5e255d35d5b2c91a9182ce6f774978db636617905","src/future/shared.rs":"1c406e4fbdd364a90d3ce57f207efd78491e9618ceeb86f3c0f3820c30a1ea21","src/future/then.rs":"c49b388ab3c78979ad9ae40f6e859ee98e9351bdb11e3c3f1ad4ceca77651a56","src/lib.rs":"f9f0855d61bb06f9b1df0bf56220a41c5ab5c721a72ef24cf46e2dccb5153c7a","src/lock.rs":"fe4c8185f9774a134d4ce27af4a9c8b25f30f7dcc6990473210d66b6b8936ce4","src/poll.rs":"df74c3a8169d7895f3c46dd6de99edd77bd024b85e26b1d0644d2b8e5ef515b9","src/resultstream.rs":"365bc127c0410badb58ea2beb2abae546968ba3ac91abe2140e93e0c3620228f","src/sink/buffer.rs":"17e6bad2434f31630494a9a98e40a287da8a603515885ab8a17199ab0e5f8e46","src/sink/fanout.rs":"1fbcabdb1d22a43919417790082dc27ac65e2a100263504b6664a0b5e0657ae1","src/sink/flush.rs":"6c9a3bb9705c740e601ca6101cf6e6a87f2568661cff39a3576ef55986e3cb60","src/sink/from_err.rs":"b6d6e43c1f90c70bc1576ac2c9f1a7777fc07eef419721850962d896ac6cc3de","src/sink/map_err.rs":"b34a60880336b536666c1047f1919dd90eeed10b869e9c679fa928a3d5321112","src/sink/mod.rs":"4b4d80d008bfa8d0abc83cd640dc9c107423c7920795678c079c544c037ab632","src/sink/send.rs":"019f3f8ab450edc0adb864e4b819f5b0d4cfe9dc33a53093c2aa18e1eb6270dc","src/sink/send_all.rs":"b05047459faceecf0dfd5e6280014c31f5a2a1058974785db8ede497c10a1e79","src/sink/wait.rs":"9c70fdd54c642e4ecf7d9b0ff1fbb2df9c89349dfd60b5482748cd93c6dc301e","src/sink/with.rs":"a122cc26108cb3396db12cb2107c576d366c61191f656acedd5ff6c65165fcfc","src/sink/with_flat_map.rs":"7b0f367d98a99d297c3ce097e9858ad7b0dfdafbb66516cba0767b62beb01af3","src/stream/and_then.rs":"9f0f6ee06343ab03eebcb71257963e76d8e7208e4015b402cc8a58f793e37d79","src/stream/buffer_unordered.rs":"057c3dec32baf451ef02f44ef849086637e4d2cbb2d65907cc15ed9398fe131b","src/stream/buffered.rs":"4ced19e37e47182d5f9c7f852a7906c35b71ac4a5b2774a9101859defbecb190","src/stream/catch_unwind.rs":"957b935645f1744a4741962772c15e94370153f33e0db356309bf98ebb599c37","src/stream/chain.rs":"0b6b06cf5aaf0c2f665c61c65766d6113e24f690ebd9ad3a89abfa521e2ce9b2","src/stream/channel.rs":"f728402228fea0be01ec5cf1d02e49e52666c0c9ea986708d18e24f30376f6de","src/stream/chunks.rs":"6c68b006670f2ea227231ba9a7986c46b4f798a871a3de62dd00acfb84c3435b","src/stream/collect.rs":"e770850c7ed2d458b521c12af4ee76adf2303919849d2f95fa93fdf574c86d37","src/stream/concat.rs":"39549687b589562ce713a999e2887b6f20ec8f87291d82ee8b1a48dd7dfe9c8e","src/stream/empty.rs":"e8e2820fd3b2329a6987a11c3b3f28849f49427d1a745f2bdc7a4982476514e7","src/stream/filter.rs":"4abaf6c7bd3ecbccf7deac7920cc6bdc1b17875bedf7c6acd7e702254b3b83ba","src/stream/filter_map.rs":"573079f98efc38bbc68746084702b952ccb035bd8238c3c30fa103979865ed0e","src/stream/flatten.rs":"f2edce326745373c9c524bb574ce18584be95c7fd1a0ef875256b39891219b18","src/stream/fold.rs":"7f397373ed66560ff1eb0cffc5dafaf1569d3c8155fe418cc2bf6fc33faec230","src/stream/for_each.rs":"bd7f96bf551a829e37a54fd529e0b68a8868480797df039c75e1f226639cf096","src/stream/forward.rs":"5dd07a3d85130554f6c0c950fd635e4594f43a0284440f6f1af2a240511c5621","src/stream/from_err.rs":"bde1791790030c480aa88c6f7b235703d5b400249c841c8b045ea2203728b96c","src/stream/fuse.rs":"5d544151de7e5a3ce8a47bdeabe5cc9beaf0937b1eeed67e8d76842f54dea65d","src/stream/future.rs":"8f72146483c0423cbc11d45c76ee219ed12d940164c83199bb85cd6d5d64c22d","src/stream/futures_ordered.rs":"3e41623352600e116c327fe37005da04b0dcf1d5db379cab147738a1383732d8","src/stream/futures_unordered.rs":"3a445ebf5815ecbafaef6dab011cc3edf012564082717a615b70425e78142e1e","src/stream/inspect.rs":"4a1e7d7bbb0842a7021c5145bb1b64dbc213cfdccff51fe8399e3120c123eab5","src/stream/inspect_err.rs":"b4f2bc6a139df8f8eb403aafbca91c05b3093d3a6e13cef034a639fbe3ebe01e","src/stream/iter.rs":"cfff6b28759ccf390e8367f9f63209133c16e7fa53c7ae71167f318ba3ec624b","src/stream/iter_ok.rs":"5165cb02972776515734e0f343e626fbb448b65b38cdeacffbd86116f3c3cd37","src/stream/iter_result.rs":"9db38b1066d9adc1ece496432127049d36fb4b9895660c2af2b7ac28510c9084","src/stream/map.rs":"ba16b1469e519377939cf3bd073b258ac41e6349aab1c59393e3b30178a56496","src/stream/map_err.rs":"5ce9a279fde1f4f0887435856e1efa4fdeda749d43f4bab658b0abd216bc0a6f","src/stream/merge.rs":"63bb60ca386e280985cee8e16ae8b07f02d57aa8a0fa877ae01fb8b4678366d0","src/stream/mod.rs":"4017d01e3d1ae009d1ea5da53499ad8fa0b6e90d5a7693fab9acc239712445ef","src/stream/once.rs":"277c960dc4bfa09fcc6112efa4e38a9fe937dc31fff440405e60bfd843f3c1ab","src/stream/or_else.rs":"c11ea499d85d6204ad083058eeca9dbf29873c49ee21bf01f9fe53e9ec3bba52","src/stream/peek.rs":"25d78baa0b3e30d2d1c72d1f3b1aa2a28811522d345dceefec587beb18b70fe2","src/stream/poll_fn.rs":"1dffbe60bd50c19efb71de2f768eecf70fa280b0d9c9cb889d16bb43b1619c8b","src/stream/repeat.rs":"807f2be5c9c1e7d54954f73ee38a373e71177aca43be8866712798f29ab541c2","src/stream/select.rs":"027873d9142e896272f7471cccaaccb133bf9f696a3f7510f3fb1aa4253a7c09","src/stream/skip.rs":"d7c839ca15f830709ebedd9526bb9ebd64ee22cb944e44213ce850a1383b71fa","src/stream/skip_while.rs":"aeb9bd64530bfaa631f4ca9500861c62fbf32849b09383eb26904bedd8b8b269","src/stream/split.rs":"c9b391fcbf3d1762bde442fd3549bd4739d2f9f486e88063650d42fea33c6af3","src/stream/take.rs":"9872429dd89cb34755b514abde9b6a876da076aea0449fcadfcc48e982507f21","src/stream/take_while.rs":"36bc2a33850ba2b58fb0da3866c96c8f4dfbd81133e615fda031518e71d425b5","src/stream/then.rs":"c7c66e27180cf2d98694de27504283a32444a0d0d6919ab25b3621fa6169408d","src/stream/unfold.rs":"5e69718714cc38c5ca6d0a6f5243ab28e392bdc97d96e8ab9059d9f0e772120c","src/stream/wait.rs":"936a15df4499d188f210cb0133bc8ad25e33e5b674a96105b4da549f32e92b40","src/stream/zip.rs":"33f1401683a29ce194927533c40bdbbc0783c552cf0b666f268fa7109e593853","src/sync/bilock.rs":"def09b26f9d66f2be0a8885ad6cf7106c3a073493bad591fc4a068212f0d739f","src/sync/mod.rs":"27ad26777f600f7054215fccdff07f4303182af2a6e0998d4229d62b090b7aac","src/sync/mpsc/mod.rs":"97542ef9fcbe338f2ac0ce982a9af11883aded33d3b4ce34a788cf98e00a7d3f","src/sync/mpsc/queue.rs":"b39889f1b2000a3de995a50f46243f97a98d3cce7c6de4b95c4d8ffeb42af918","src/sync/oneshot.rs":"5d41f1d19b78ada7d5587d0fb5751de5886281cf59889ba1b77cbde399975f1f","src/task.rs":"914955224ba1613835027e6d6436b83ce41caf217428c2c576e8783cacc7ba96","src/task_impl/atomic_task.rs":"1a1cf99a0220116f2f28742acd82b17b8f46e4ec737238ac0609d5581cac3084","src/task_impl/core.rs":"3ababa3970da5668f2b678724a4b5e1aa5f2b65a2355276b7d14ba3dfdd52686","src/task_impl/mod.rs":"2799e3997ca43d00ee6c32f79882e5a07b5610b86338e2388d974f2d4c69d52b","src/task_impl/std/data.rs":"9b6210811c095c4d0ec0f59a566bb8f5bc4b6ba544c72a4565dc47f3b7fbfab9","src/task_impl/std/mod.rs":"e66075507ee5b8850a5084507d8856ea820be1a063300155dace2052b4a7f825","src/task_impl/std/task_rc.rs":"a6e46e79fecb1497d603c016f4f1b14523346f74af800c9c27c069229d62dc25","src/task_impl/std/unpark_mutex.rs":"7a53b7209ff00880bce9d912c249b077870625ca87fe9ab7b0f441d3af430302","src/unsync/mod.rs":"e5da32f78212646f0161fec2e7193cda830f541bc9ae37361fbcf82e99cc1d86","src/unsync/mpsc.rs":"ef63328496eeaa6575a17525193c6093e7803df3a64355a40f0187119ca1d731","src/unsync/oneshot.rs":"89661388a87d4ac83befc31df9ad11e6a8c6104e2dde7be9e3585d7549cfe8c4","tests/all.rs":"99c6ad1d1e16ad2e0bc3027e1f5cb1a8f89404f71d77d3fc85badb67278f8179","tests/bilock.rs":"68462100c0c1e4e72f220d96ce1e6b25648f4c10a390be8a3bbfa99bbd795f31","tests/buffer_unordered.rs":"50ceb305da08fa095ee40a8f145fa9d95db59372cca949d77f011bbabc072152","tests/channel.rs":"63d6ab1b7fd51680562f9d626a5fab9d4b81226272b5e0f9ca7faa88eae5073a","tests/eager_drop.rs":"e0a615c39f1fb9baae543212e72a165f68e7576f6b8c6db1809149d819bd546b","tests/eventual.rs":"73cbd3836a598175439b5dc5597f7e464dfbc6d77379aaae1172c6c7f85220e5","tests/fuse.rs":"feba43c51cbeeb383f6ebba4a4c75107de69a3cdb3eadb3e673fbeb5a91f9ac4","tests/future_flatten_stream.rs":"133b91a9e2170849ed7dbcb4024675873a781bf2dd190cfcaa9c41418c3ccb97","tests/futures_ordered.rs":"7835bf9bedb9322a93070b5d87886b7a333dc469aee74f7eb86a1a7914b4602c","tests/futures_unordered.rs":"048153d9c4ec3433efbb97edfe01a458762e76160624362c658432f6f2357524","tests/inspect.rs":"d7706a175be9ed6ecc09d7a45e1559160e00da85fa8a9a7caec4c53918999842","tests/mpsc-close.rs":"62c1d2acaf60e3e896471fef6a507a125b336c04781237de8dc9d13e59cfa9fc","tests/mpsc.rs":"46488138956c2293680b3282e2001a413631728638760ee0073daa5e6f75de5a","tests/oneshot.rs":"a8773b3a65e79944045118f36bfd81fceb826d4e2846b46f86db37a02d7ae1f4","tests/ready_queue.rs":"3d50c4e71e3954c5b8e2672255b6af33abaebc16172c038e64c3323d633693c0","tests/recurse.rs":"4922e1ad975dca9d6b63d155515cc24181ad6a915adcbb743f7c8a58c0148a77","tests/select_all.rs":"3666e95ea94da17abb1899101e51b294af576bc446119fbc8aea5bb2991f439a","tests/select_ok.rs":"7a740e5b2d70c7776202ed1495b016f6e63ae1de06ca0f12ab21fcb3117450a9","tests/shared.rs":"4abb7c9a7f6207e40bc7408ee405df4e5a3e778054ceb113b4a177a886a64d11","tests/sink.rs":"7da8db7fb7c4f4f259d2d520b92a121de0a750b389217c8a4a02070bd0006423","tests/split.rs":"24dd293f049a37bfaabb02ae558c81e9fef9298a2ce43ecb544450b045c15f5c","tests/stream.rs":"3ca52f06a4503a853acce77997e4e744903c2084a83e0abf1e704e4f73833805","tests/stream_catch_unwind.rs":"6cee77f455a671d038aac24cf2f79636f1c0a5d8900957a2fed0ee3ed99832b8","tests/support/local_executor.rs":"10ca7f0bc1d9fd45350a807cfd76015fe24bf68d9a711e16ea0ec6be22af9ddd","tests/support/mod.rs":"1961189f57851a468e518327da0b7893eee990e477b82a278e0015f25b5e5a1c","tests/unfold.rs":"27ff8c3c83b333094bbffe6aebadf3730f0e35d1367b7b602a3df4e233d934d8","tests/unsync-oneshot.rs":"e676b37a64e1d6c0816d55cf443d86249ec2ff8180f1fc0d009de51e6842dac8","tests/unsync.rs":"89c335c6d8764ea12bc8ae75b6df717b8c697863764353a55faf884eaeb24699"},"package":"49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"081044d6883e82c3c5a288e0cf0e839acfffbc329c6170cecbf436d163b3390c","Cargo.toml":"a16be26e16b8bd9838eed9a89adb6f3e3934e428ba4b0463714b3f3b7326a75a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"69036b033e4bb951821964dbc3d9b1efe6913a6e36d9c1f206de4035a1a85cc4","README.md":"52248a83513c979d501093d0621ff76a291e169fcdbc2ec2d6a25672fd86fe71","appveyor.yml":"7b8de5d694cb575649354d7fc3eff0781e2c5c412df4bc8a90b36b6fdb55bfab","benches/bilock.rs":"60b9e0814b8396e0320d299273c6f91c2ccc09a2bb59eec92df74a1f0919e54f","benches/futures_unordered.rs":"fa2d3b5e6cdfe1e941d78c119a696fb583341fa0a0895ec2692e6d374ceb9a0e","benches/poll.rs":"ca369079c4db366a180be22f406eaf8e94e2e771c02568eb35d89e63093006cf","benches/sync_mpsc.rs":"8d4dbf78afcdf61fc72da326c4810bc797462771707d079f95a7f75aa2ec0ec0","benches/thread_notify.rs":"1992b1e2b352fbc15a611d1318ac1bf6f19318d769086d55c80e6863f1b0e106","src/executor.rs":"80466c075daf030e07cc0d053618837cb73c07f5399b3d65016925f4488adb73","src/future/and_then.rs":"15653d392d331a1fc4619129f737acc28525c88d1675b7fcea6ed27c5b1bf302","src/future/catch_unwind.rs":"dfef6b6a66c09574338046cf23b0c6aacd8200872d512b831d6dc12038f05298","src/future/chain.rs":"4d712e989e079f4164d5d9fe3bb522d521094b0d8083ee639350570444e5bb93","src/future/either.rs":"d8d3a4686dfe0068cc35ee452268ff2406e1e6adfddd3f0841988bfa6489ca5d","src/future/empty.rs":"b549a1ca0f21bc6d1a26d9063a9a60deb9235ff7eff5db915050115fed91a9c7","src/future/flatten.rs":"7eb15429fcc749326371fe571e1f7d294d7b83f7557e6e1971e2206180253d65","src/future/flatten_stream.rs":"cf914425c3606b61c046df5c43d64266d6f2328693e4122441f9bbcf7cb0a4e1","src/future/from_err.rs":"a1f42d95f7b52e80c2e5a03b44cbce0efbe5fc486dfe33d799b74ab9ba9057ab","src/future/fuse.rs":"3920c819b850c8f04b3868eae70dc0d3e6802ff0b517501f3aa5057a3b632102","src/future/inspect.rs":"89c362d8402dddd784bcc54e62ca27657ca8108e1ae8de5a7237e08650e10636","src/future/into_stream.rs":"0fa6bc4d70e8b4d75cf45fba53b39f033b87574103fffea4090b78f049bf43d0","src/future/join.rs":"b1dcefb03b1cb4e609ad2e79ba9a6cfab24235d7a4fff7fb9daf2c8fbf0f3d70","src/future/join_all.rs":"30fc27cbc1248046937b441a165a911e9ed1cd887ad6f3aeeb573b59c43e9cbf","src/future/lazy.rs":"1a2025bae3675fb682cefbf8a88bbb7a7519cfdee42dd6b3049a4d2b7ab8b5b1","src/future/loop_fn.rs":"5bd952247ae4e9d31dff77386bbd3700f596da136ea53e9e9944266af3f08688","src/future/map.rs":"91e148d9adaea929b85ede63c71fb07ef9b5611db906a13eedad2cf551745b47","src/future/map_err.rs":"2c8e87fa8ff56061722db6c69aaba588e6df6835a4e2fe84826f0bd4fed2e007","src/future/mod.rs":"362679ce9e4d55952eced756b8b69c017b966d2027a2c729ce20c382f1f86109","src/future/option.rs":"93270226cadcfa349250023e2070e687cf595831f427904ca744f7bc50342ded","src/future/or_else.rs":"444567101c4c437b184aa2e2eec0cf4363af442c0afc58d6508d3d2ac86489a9","src/future/poll_fn.rs":"817bfb75e7c43ca96a53e8cc9f48606c92c3c6742b07a732ce79a8f9b7bf8808","src/future/result.rs":"cc62c2377defb7b53aa859bf05c41c52a9cf8583378b7072bb2b45232d5fc9c5","src/future/select.rs":"73efd98004d5d8c46607bf770ff07a810bcdbe05cce0e8e4f41f5e659fd44203","src/future/select2.rs":"cfbbf3a9794109c56a3703456fae6111826bc25f98f2f36b234d483eeeeab482","src/future/select_all.rs":"b009e57ac241a3aba78db0bb751432cb99c1e91b8bae1b3baf225921f0daa441","src/future/select_ok.rs":"4884896914d8903edbfa12b5e255d35d5b2c91a9182ce6f774978db636617905","src/future/shared.rs":"1c406e4fbdd364a90d3ce57f207efd78491e9618ceeb86f3c0f3820c30a1ea21","src/future/then.rs":"c49b388ab3c78979ad9ae40f6e859ee98e9351bdb11e3c3f1ad4ceca77651a56","src/lib.rs":"f9f0855d61bb06f9b1df0bf56220a41c5ab5c721a72ef24cf46e2dccb5153c7a","src/lock.rs":"fe4c8185f9774a134d4ce27af4a9c8b25f30f7dcc6990473210d66b6b8936ce4","src/poll.rs":"df74c3a8169d7895f3c46dd6de99edd77bd024b85e26b1d0644d2b8e5ef515b9","src/resultstream.rs":"365bc127c0410badb58ea2beb2abae546968ba3ac91abe2140e93e0c3620228f","src/sink/buffer.rs":"17e6bad2434f31630494a9a98e40a287da8a603515885ab8a17199ab0e5f8e46","src/sink/fanout.rs":"1fbcabdb1d22a43919417790082dc27ac65e2a100263504b6664a0b5e0657ae1","src/sink/flush.rs":"6c9a3bb9705c740e601ca6101cf6e6a87f2568661cff39a3576ef55986e3cb60","src/sink/from_err.rs":"b6d6e43c1f90c70bc1576ac2c9f1a7777fc07eef419721850962d896ac6cc3de","src/sink/map_err.rs":"b34a60880336b536666c1047f1919dd90eeed10b869e9c679fa928a3d5321112","src/sink/mod.rs":"4b4d80d008bfa8d0abc83cd640dc9c107423c7920795678c079c544c037ab632","src/sink/send.rs":"019f3f8ab450edc0adb864e4b819f5b0d4cfe9dc33a53093c2aa18e1eb6270dc","src/sink/send_all.rs":"b05047459faceecf0dfd5e6280014c31f5a2a1058974785db8ede497c10a1e79","src/sink/wait.rs":"9c70fdd54c642e4ecf7d9b0ff1fbb2df9c89349dfd60b5482748cd93c6dc301e","src/sink/with.rs":"a122cc26108cb3396db12cb2107c576d366c61191f656acedd5ff6c65165fcfc","src/sink/with_flat_map.rs":"7b0f367d98a99d297c3ce097e9858ad7b0dfdafbb66516cba0767b62beb01af3","src/stream/and_then.rs":"9f0f6ee06343ab03eebcb71257963e76d8e7208e4015b402cc8a58f793e37d79","src/stream/buffer_unordered.rs":"057c3dec32baf451ef02f44ef849086637e4d2cbb2d65907cc15ed9398fe131b","src/stream/buffered.rs":"4ced19e37e47182d5f9c7f852a7906c35b71ac4a5b2774a9101859defbecb190","src/stream/catch_unwind.rs":"957b935645f1744a4741962772c15e94370153f33e0db356309bf98ebb599c37","src/stream/chain.rs":"0b6b06cf5aaf0c2f665c61c65766d6113e24f690ebd9ad3a89abfa521e2ce9b2","src/stream/channel.rs":"f728402228fea0be01ec5cf1d02e49e52666c0c9ea986708d18e24f30376f6de","src/stream/chunks.rs":"6c68b006670f2ea227231ba9a7986c46b4f798a871a3de62dd00acfb84c3435b","src/stream/collect.rs":"e770850c7ed2d458b521c12af4ee76adf2303919849d2f95fa93fdf574c86d37","src/stream/concat.rs":"39549687b589562ce713a999e2887b6f20ec8f87291d82ee8b1a48dd7dfe9c8e","src/stream/empty.rs":"e8e2820fd3b2329a6987a11c3b3f28849f49427d1a745f2bdc7a4982476514e7","src/stream/filter.rs":"4abaf6c7bd3ecbccf7deac7920cc6bdc1b17875bedf7c6acd7e702254b3b83ba","src/stream/filter_map.rs":"573079f98efc38bbc68746084702b952ccb035bd8238c3c30fa103979865ed0e","src/stream/flatten.rs":"f2edce326745373c9c524bb574ce18584be95c7fd1a0ef875256b39891219b18","src/stream/fold.rs":"7f397373ed66560ff1eb0cffc5dafaf1569d3c8155fe418cc2bf6fc33faec230","src/stream/for_each.rs":"bd7f96bf551a829e37a54fd529e0b68a8868480797df039c75e1f226639cf096","src/stream/forward.rs":"5dd07a3d85130554f6c0c950fd635e4594f43a0284440f6f1af2a240511c5621","src/stream/from_err.rs":"bde1791790030c480aa88c6f7b235703d5b400249c841c8b045ea2203728b96c","src/stream/fuse.rs":"5d544151de7e5a3ce8a47bdeabe5cc9beaf0937b1eeed67e8d76842f54dea65d","src/stream/future.rs":"8f72146483c0423cbc11d45c76ee219ed12d940164c83199bb85cd6d5d64c22d","src/stream/futures_ordered.rs":"3e41623352600e116c327fe37005da04b0dcf1d5db379cab147738a1383732d8","src/stream/futures_unordered.rs":"3a445ebf5815ecbafaef6dab011cc3edf012564082717a615b70425e78142e1e","src/stream/inspect.rs":"4a1e7d7bbb0842a7021c5145bb1b64dbc213cfdccff51fe8399e3120c123eab5","src/stream/inspect_err.rs":"b4f2bc6a139df8f8eb403aafbca91c05b3093d3a6e13cef034a639fbe3ebe01e","src/stream/iter.rs":"cfff6b28759ccf390e8367f9f63209133c16e7fa53c7ae71167f318ba3ec624b","src/stream/iter_ok.rs":"5165cb02972776515734e0f343e626fbb448b65b38cdeacffbd86116f3c3cd37","src/stream/iter_result.rs":"9db38b1066d9adc1ece496432127049d36fb4b9895660c2af2b7ac28510c9084","src/stream/map.rs":"ba16b1469e519377939cf3bd073b258ac41e6349aab1c59393e3b30178a56496","src/stream/map_err.rs":"5ce9a279fde1f4f0887435856e1efa4fdeda749d43f4bab658b0abd216bc0a6f","src/stream/merge.rs":"63bb60ca386e280985cee8e16ae8b07f02d57aa8a0fa877ae01fb8b4678366d0","src/stream/mod.rs":"4017d01e3d1ae009d1ea5da53499ad8fa0b6e90d5a7693fab9acc239712445ef","src/stream/once.rs":"277c960dc4bfa09fcc6112efa4e38a9fe937dc31fff440405e60bfd843f3c1ab","src/stream/or_else.rs":"c11ea499d85d6204ad083058eeca9dbf29873c49ee21bf01f9fe53e9ec3bba52","src/stream/peek.rs":"25d78baa0b3e30d2d1c72d1f3b1aa2a28811522d345dceefec587beb18b70fe2","src/stream/poll_fn.rs":"1dffbe60bd50c19efb71de2f768eecf70fa280b0d9c9cb889d16bb43b1619c8b","src/stream/repeat.rs":"807f2be5c9c1e7d54954f73ee38a373e71177aca43be8866712798f29ab541c2","src/stream/select.rs":"027873d9142e896272f7471cccaaccb133bf9f696a3f7510f3fb1aa4253a7c09","src/stream/skip.rs":"d7c839ca15f830709ebedd9526bb9ebd64ee22cb944e44213ce850a1383b71fa","src/stream/skip_while.rs":"aeb9bd64530bfaa631f4ca9500861c62fbf32849b09383eb26904bedd8b8b269","src/stream/split.rs":"c9b391fcbf3d1762bde442fd3549bd4739d2f9f486e88063650d42fea33c6af3","src/stream/take.rs":"9872429dd89cb34755b514abde9b6a876da076aea0449fcadfcc48e982507f21","src/stream/take_while.rs":"36bc2a33850ba2b58fb0da3866c96c8f4dfbd81133e615fda031518e71d425b5","src/stream/then.rs":"c7c66e27180cf2d98694de27504283a32444a0d0d6919ab25b3621fa6169408d","src/stream/unfold.rs":"5e69718714cc38c5ca6d0a6f5243ab28e392bdc97d96e8ab9059d9f0e772120c","src/stream/wait.rs":"936a15df4499d188f210cb0133bc8ad25e33e5b674a96105b4da549f32e92b40","src/stream/zip.rs":"33f1401683a29ce194927533c40bdbbc0783c552cf0b666f268fa7109e593853","src/sync/bilock.rs":"def09b26f9d66f2be0a8885ad6cf7106c3a073493bad591fc4a068212f0d739f","src/sync/mod.rs":"27ad26777f600f7054215fccdff07f4303182af2a6e0998d4229d62b090b7aac","src/sync/mpsc/mod.rs":"97542ef9fcbe338f2ac0ce982a9af11883aded33d3b4ce34a788cf98e00a7d3f","src/sync/mpsc/queue.rs":"b39889f1b2000a3de995a50f46243f97a98d3cce7c6de4b95c4d8ffeb42af918","src/sync/oneshot.rs":"5d41f1d19b78ada7d5587d0fb5751de5886281cf59889ba1b77cbde399975f1f","src/task.rs":"914955224ba1613835027e6d6436b83ce41caf217428c2c576e8783cacc7ba96","src/task_impl/atomic_task.rs":"1a1cf99a0220116f2f28742acd82b17b8f46e4ec737238ac0609d5581cac3084","src/task_impl/core.rs":"3ababa3970da5668f2b678724a4b5e1aa5f2b65a2355276b7d14ba3dfdd52686","src/task_impl/mod.rs":"2799e3997ca43d00ee6c32f79882e5a07b5610b86338e2388d974f2d4c69d52b","src/task_impl/std/data.rs":"9b6210811c095c4d0ec0f59a566bb8f5bc4b6ba544c72a4565dc47f3b7fbfab9","src/task_impl/std/mod.rs":"e66075507ee5b8850a5084507d8856ea820be1a063300155dace2052b4a7f825","src/task_impl/std/task_rc.rs":"a6e46e79fecb1497d603c016f4f1b14523346f74af800c9c27c069229d62dc25","src/task_impl/std/unpark_mutex.rs":"7a53b7209ff00880bce9d912c249b077870625ca87fe9ab7b0f441d3af430302","src/unsync/mod.rs":"e5da32f78212646f0161fec2e7193cda830f541bc9ae37361fbcf82e99cc1d86","src/unsync/mpsc.rs":"ef63328496eeaa6575a17525193c6093e7803df3a64355a40f0187119ca1d731","src/unsync/oneshot.rs":"89661388a87d4ac83befc31df9ad11e6a8c6104e2dde7be9e3585d7549cfe8c4","tests/all.rs":"99c6ad1d1e16ad2e0bc3027e1f5cb1a8f89404f71d77d3fc85badb67278f8179","tests/bilock.rs":"68462100c0c1e4e72f220d96ce1e6b25648f4c10a390be8a3bbfa99bbd795f31","tests/buffer_unordered.rs":"50ceb305da08fa095ee40a8f145fa9d95db59372cca949d77f011bbabc072152","tests/channel.rs":"63d6ab1b7fd51680562f9d626a5fab9d4b81226272b5e0f9ca7faa88eae5073a","tests/eager_drop.rs":"e0a615c39f1fb9baae543212e72a165f68e7576f6b8c6db1809149d819bd546b","tests/eventual.rs":"73cbd3836a598175439b5dc5597f7e464dfbc6d77379aaae1172c6c7f85220e5","tests/fuse.rs":"feba43c51cbeeb383f6ebba4a4c75107de69a3cdb3eadb3e673fbeb5a91f9ac4","tests/future_flatten_stream.rs":"133b91a9e2170849ed7dbcb4024675873a781bf2dd190cfcaa9c41418c3ccb97","tests/futures_ordered.rs":"7835bf9bedb9322a93070b5d87886b7a333dc469aee74f7eb86a1a7914b4602c","tests/futures_unordered.rs":"048153d9c4ec3433efbb97edfe01a458762e76160624362c658432f6f2357524","tests/inspect.rs":"d7706a175be9ed6ecc09d7a45e1559160e00da85fa8a9a7caec4c53918999842","tests/mpsc-close.rs":"62c1d2acaf60e3e896471fef6a507a125b336c04781237de8dc9d13e59cfa9fc","tests/mpsc.rs":"46488138956c2293680b3282e2001a413631728638760ee0073daa5e6f75de5a","tests/oneshot.rs":"a8773b3a65e79944045118f36bfd81fceb826d4e2846b46f86db37a02d7ae1f4","tests/ready_queue.rs":"3d50c4e71e3954c5b8e2672255b6af33abaebc16172c038e64c3323d633693c0","tests/recurse.rs":"4922e1ad975dca9d6b63d155515cc24181ad6a915adcbb743f7c8a58c0148a77","tests/select_all.rs":"3666e95ea94da17abb1899101e51b294af576bc446119fbc8aea5bb2991f439a","tests/select_ok.rs":"7a740e5b2d70c7776202ed1495b016f6e63ae1de06ca0f12ab21fcb3117450a9","tests/shared.rs":"4abb7c9a7f6207e40bc7408ee405df4e5a3e778054ceb113b4a177a886a64d11","tests/sink.rs":"7da8db7fb7c4f4f259d2d520b92a121de0a750b389217c8a4a02070bd0006423","tests/split.rs":"24dd293f049a37bfaabb02ae558c81e9fef9298a2ce43ecb544450b045c15f5c","tests/stream.rs":"3ca52f06a4503a853acce77997e4e744903c2084a83e0abf1e704e4f73833805","tests/stream_catch_unwind.rs":"6cee77f455a671d038aac24cf2f79636f1c0a5d8900957a2fed0ee3ed99832b8","tests/support/local_executor.rs":"10ca7f0bc1d9fd45350a807cfd76015fe24bf68d9a711e16ea0ec6be22af9ddd","tests/support/mod.rs":"1961189f57851a468e518327da0b7893eee990e477b82a278e0015f25b5e5a1c","tests/unfold.rs":"27ff8c3c83b333094bbffe6aebadf3730f0e35d1367b7b602a3df4e233d934d8","tests/unsync-oneshot.rs":"e676b37a64e1d6c0816d55cf443d86249ec2ff8180f1fc0d009de51e6842dac8","tests/unsync.rs":"89c335c6d8764ea12bc8ae75b6df717b8c697863764353a55faf884eaeb24699"},"package":"49e7653e374fe0d0c12de4250f0bdb60680b8c80eed558c5c7538eec9c89e21b"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/futures/.travis.yml b/rustc_deps/vendor/futures/.travis.yml
deleted file mode 100644
index 4f007e9..0000000
--- a/rustc_deps/vendor/futures/.travis.yml
+++ /dev/null
@@ -1,32 +0,0 @@
-language: rust
-
-matrix:
-  include:
-    - os: osx
-    - rust: stable
-    - rust: beta
-    - rust: nightly
-      env: BENCH=1
-    - os: linux
-      rust: 1.15.0
-      script: cargo test
-sudo: false
-script:
-  - cargo build
-  - cargo build --no-default-features
-  - cargo test
-  - cargo test --no-default-features --features use_std
-  - cargo test --manifest-path futures-cpupool/Cargo.toml
-  - cargo test --manifest-path futures-cpupool/Cargo.toml --no-default-features
-
-  - cargo doc --no-deps
-  - cargo doc --no-deps --manifest-path futures-cpupool/Cargo.toml
-  - if [ "$BENCH" = "1" ]; then cargo bench; fi
-  - if [[ "$TRAVIS_RUST_VERSION" == nightly ]]; then cargo test --features nightly; fi
-env:
-  global:
-    - secure: "iwVcMVIF7ZSY82fK5UyyUvVvJxMSYrbZawh1+4Oi8pvOdYq1gptcDoOC8jxWwCwrNF1b+/85n+jlEUngEqqSmV5PjAbWPjoc+u4Zn7CRi1AlxoUlvHPiQm4vM4Mkkd6GsqoIZttCeedU9m/w0nQ18uUtK8uD6vr2FVdcMnUnkYQAxuGOowGLrwidukzfBXMCu/JrwKMIbt61knAFiI/KJknu0h1mRrhpeF/sQ3tJFzRRcQeFJkbfwDzltMpPo1hq5D3HI4ONjYi/qO2pwUhDk4umfp9cLW9MS8rQvptxJTQmWemHi+f2/U4ld6a0URL6kEuMkt/EbH0A74eFtlicfRs44dX9MlWoqbLypnC3ymqmHcpwcwNA3HmZyg800MTuU+BPK41HIPdO9tPpxjHEiqvNDknH7qs+YBnis0eH7DHJgEjXq651PjW7pm+rnHPwsj+OzKE1YBNxBQZZDkS3VnZJz+O4tVsOzc3IOz0e+lf7VVuI17C9haj117nKp3umC4MVBA0S8RfreFgqpyDeY2zwcqOr0YOlEGGRl0vyWP8Qcxx12kQ7+doLolt6Kxda4uO0hKRmIF6+qki1T+L7v8BOGOtCncz4f7IX48eQ7+Wu0OtglRn45qAa3CxjUuW6xX3KSNH66PCXV0Jtp8Ga2SSevX2wtbbFu9f+9R+PQY4="
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/gcc/.cargo-checksum.json b/rustc_deps/vendor/gcc/.cargo-checksum.json
index e045e61..65712a9 100644
--- a/rustc_deps/vendor/gcc/.cargo-checksum.json
+++ b/rustc_deps/vendor/gcc/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"276069d13bb9d23f12fc0f8250fe43903a524b3694397f874eb586c34528aa86","Cargo.toml":"a9b682404557c90af435a42dc197ba2c6c0a5c7bb116f85ad678de4664a3d6b2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"a64688e33c6739cb92b748e9002d7e452c3c62c11e648e68bb5ce1999097a03e","appveyor.yml":"ef04ec11eba1462746866e02e0f5336cc50b337f61884b6d2547253ddfd0b957","src/bin/gcc-shim.rs":"d6be9137cb48b86891e7b263adbf492e1193ffe682db9ba4a88eb1079b874b58","src/com.rs":"0cb06f5db0fb70d27db0e5917ca337de6e7032119e6aabfea1bad9c719f5f34b","src/lib.rs":"6576184808b11d28a97e98882801885101c5be677197bc0509c2e7499866f7e6","src/registry.rs":"3876ef9573e3bbc050aef41a684b9a510cc1a91b15ae874fe032cf4377b4d116","src/setup_config.rs":"1a3eeb11c6847c31f2a4685b62ab35c76f0b6d5a17f7ed99e9df164283a771f7","src/winapi.rs":"cb5e6cab3eb570b0f97c660ca448ccfb5024262c0c7b245c181daad91a79f211","src/windows_registry.rs":"6de548aa94215e449f0e58e9a3b1702939d7c2f7b63a9040901c948bf138201d","tests/cc_env.rs":"d92c5e3d3d43ac244e63b2cd2c93a521fcf124bf1ccf8d4c6bfa7f8333d88976","tests/support/mod.rs":"d15a3a614ff7776a5eb1613fc6718c85910b6d0ab14bb13e86faecd16471a3f7","tests/test.rs":"54f5ddf1c1952821ead859fe8a57eae7dab94a407bbf6998010885fa47134364"},"package":"8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"}
\ No newline at end of file
+{"files":{"Cargo.toml":"a9b682404557c90af435a42dc197ba2c6c0a5c7bb116f85ad678de4664a3d6b2","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"378f5840b258e2779c39418f3f2d7b2ba96f1c7917dd6be0713f88305dbda397","README.md":"a64688e33c6739cb92b748e9002d7e452c3c62c11e648e68bb5ce1999097a03e","appveyor.yml":"ef04ec11eba1462746866e02e0f5336cc50b337f61884b6d2547253ddfd0b957","src/bin/gcc-shim.rs":"d6be9137cb48b86891e7b263adbf492e1193ffe682db9ba4a88eb1079b874b58","src/com.rs":"0cb06f5db0fb70d27db0e5917ca337de6e7032119e6aabfea1bad9c719f5f34b","src/lib.rs":"6576184808b11d28a97e98882801885101c5be677197bc0509c2e7499866f7e6","src/registry.rs":"3876ef9573e3bbc050aef41a684b9a510cc1a91b15ae874fe032cf4377b4d116","src/setup_config.rs":"1a3eeb11c6847c31f2a4685b62ab35c76f0b6d5a17f7ed99e9df164283a771f7","src/winapi.rs":"cb5e6cab3eb570b0f97c660ca448ccfb5024262c0c7b245c181daad91a79f211","src/windows_registry.rs":"6de548aa94215e449f0e58e9a3b1702939d7c2f7b63a9040901c948bf138201d","tests/cc_env.rs":"d92c5e3d3d43ac244e63b2cd2c93a521fcf124bf1ccf8d4c6bfa7f8333d88976","tests/support/mod.rs":"d15a3a614ff7776a5eb1613fc6718c85910b6d0ab14bb13e86faecd16471a3f7","tests/test.rs":"54f5ddf1c1952821ead859fe8a57eae7dab94a407bbf6998010885fa47134364"},"package":"8f5f3913fa0bfe7ee1fd8248b6b9f42a5af4b9d65ec2dd2c3c26132b950ecfc2"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/gcc/.travis.yml b/rustc_deps/vendor/gcc/.travis.yml
deleted file mode 100644
index 0f0a094..0000000
--- a/rustc_deps/vendor/gcc/.travis.yml
+++ /dev/null
@@ -1,48 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-matrix:
-  include:
-    # Minimum version supported
-    - rust: 1.13.0
-      install:
-      script: cargo build
-
-sudo: false
-install:
-  - if [ "$TRAVIS_OS_NAME" = "linux" ]; then OS=unknown-linux-gnu; else OS=apple-darwin; fi
-  - export TARGET=$ARCH-$OS
-  - if [ -z "$NO_ADD" ]; then rustup target add $TARGET; fi
-before_script:
-  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-script:
-  - cargo build --verbose
-  - cargo test --verbose
-  - cargo test --verbose --features parallel
-  - cargo test --manifest-path gcc-test/Cargo.toml --target $TARGET
-  - cargo test --manifest-path gcc-test/Cargo.toml --target $TARGET --features parallel
-  - cargo test --manifest-path gcc-test/Cargo.toml --target $TARGET --release
-  - cargo doc
-  - cargo clean && cargo build
-  - rustdoc --test README.md -L target/debug -L target/debug/deps
-after_success:
-  - travis-cargo --only nightly doc-upload
-env:
-  global:
-    secure: "CBtqrudgE0PS8x3kTr44jKbC2D4nfnmdYVecooNm0qnER4B4TSvZpZSQoCgKK6k4BYQuOSyFTOwYx6M79w39ZMOgyCP9ytB+tyMWL0/+ZuUQL04yVg4M5vd3oJMkOaXbvG56ncgPyFrseY+FPDg+mXAzvJk/nily37YXjkQj2D0="
-
-  matrix:
-    - ARCH=x86_64 NO_ADD=1
-    - ARCH=i686
-notifications:
-  email:
-    on_success: never
-os:
-  - linux
-  - osx
-addons:
-  apt:
-    packages:
-      - g++-multilib
diff --git a/rustc_deps/vendor/generic-array/.cargo-checksum.json b/rustc_deps/vendor/generic-array/.cargo-checksum.json
index b6789fd..6616b50 100644
--- a/rustc_deps/vendor/generic-array/.cargo-checksum.json
+++ b/rustc_deps/vendor/generic-array/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"e54c4d5b57dd91d875a36d2d57d68fef9c14bb0c31481f2e18877edf040f8676","Cargo.toml":"87ff65d640c137c26d338f96e21e769af1e1b2e7fa615b40a1bcc755448bb118","LICENSE":"ad4fcfaf8d5b12b97409c137a03d4a4e4b21024c65c54f976cc3b609c1bd5b0f","README.md":"9a1a45416eac57050036b13df6ec84d21d555e820726af3c782896bd9d37d94b","rustfmt.toml":"2a298b4ce1fe6e16b8f281a0035567b8eb15042ed3062729fd28224f29c2f75a","src/arr.rs":"cc1ea0a9ef6a524b90767cc8a89f6b939394a2948a645ed313c0bf5ce5a258a4","src/hex.rs":"bfbf304fb4dea6f7edc0569b38bf2ac7657ce089c5761891321722509e3b5076","src/impl_serde.rs":"805885478728b3c205b842d46deb377b7dd6dd4c4c50254064431f49f0981a2a","src/impls.rs":"8c54e294a82a2bf344bdcb9949b8a84903fb65698d6b1b1e0ab9f5e7847be64f","src/iter.rs":"e52217f04d0dc046f13ef2e3539b90eabd4d55bb85cf40f76ba0bf86d5e55ef0","src/lib.rs":"da93fa505eee94b40fce0fe98e26ed3bb4d2bc4d4869af01598b6e54fc9c0f8d","tests/hex.rs":"e909bc0564e7d52c5fcf172dfc0fac7085010c6a21d38581bf73a54ab2e256e1","tests/import_name.rs":"1235729ecbde47fc9a38b3bf35c750a53ed55e3cf967c9d2b24fd759dc9e9e0c","tests/mod.rs":"f4100c5338906c038636f98f4d2b3d272f59580662afa89d915eafb96d7bbcf9"},"package":"ef25c5683767570c2bbd7deba372926a55eaae9982d7726ee2a1050239d45b9d"}
\ No newline at end of file
+{"files":{"Cargo.toml":"87ff65d640c137c26d338f96e21e769af1e1b2e7fa615b40a1bcc755448bb118","LICENSE":"ad4fcfaf8d5b12b97409c137a03d4a4e4b21024c65c54f976cc3b609c1bd5b0f","README.md":"9a1a45416eac57050036b13df6ec84d21d555e820726af3c782896bd9d37d94b","rustfmt.toml":"2a298b4ce1fe6e16b8f281a0035567b8eb15042ed3062729fd28224f29c2f75a","src/arr.rs":"cc1ea0a9ef6a524b90767cc8a89f6b939394a2948a645ed313c0bf5ce5a258a4","src/hex.rs":"bfbf304fb4dea6f7edc0569b38bf2ac7657ce089c5761891321722509e3b5076","src/impl_serde.rs":"805885478728b3c205b842d46deb377b7dd6dd4c4c50254064431f49f0981a2a","src/impls.rs":"8c54e294a82a2bf344bdcb9949b8a84903fb65698d6b1b1e0ab9f5e7847be64f","src/iter.rs":"e52217f04d0dc046f13ef2e3539b90eabd4d55bb85cf40f76ba0bf86d5e55ef0","src/lib.rs":"da93fa505eee94b40fce0fe98e26ed3bb4d2bc4d4869af01598b6e54fc9c0f8d","tests/hex.rs":"e909bc0564e7d52c5fcf172dfc0fac7085010c6a21d38581bf73a54ab2e256e1","tests/import_name.rs":"1235729ecbde47fc9a38b3bf35c750a53ed55e3cf967c9d2b24fd759dc9e9e0c","tests/mod.rs":"f4100c5338906c038636f98f4d2b3d272f59580662afa89d915eafb96d7bbcf9"},"package":"ef25c5683767570c2bbd7deba372926a55eaae9982d7726ee2a1050239d45b9d"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/generic-array/.travis.yml b/rustc_deps/vendor/generic-array/.travis.yml
deleted file mode 100644
index e7432fa..0000000
--- a/rustc_deps/vendor/generic-array/.travis.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-language: rust
-script:
-  - cd $TRAVIS_BUILD_DIR
-  - cargo build
-  - cargo test
-  - cargo build --features serde
-  - cargo test --features serde
-after_success: |-
-  [ $TRAVIS_BRANCH = master ] &&
-  [ $TRAVIS_PULL_REQUEST = false ] &&
-  cargo doc &&
-  echo "<meta http-equiv=refresh content=0;url=`echo $TRAVIS_REPO_SLUG | cut -d '/' -f 2`/index.html>" > target/doc/index.html &&
-  sudo pip install ghp-import &&
-  ghp-import -n target/doc &&
-  git push -fq https://${GH_TOKEN}@github.com/${TRAVIS_REPO_SLUG}.git gh-pages
-env:
-  global:
-    secure: te+DVowxg7YWHJHKRE2eEKEg5lK8IwK4aeKZ6rsDMaTcQFzP+jzSYJiodVuDMXy45sfDMCnkWmVmpfXFI5tCLBSqTDXXOZ0UpE2f4fI0d3inH6McEoXNM43HNZqvEWj6Uc4PzTSzkywcAhg39I08PRbp5zzdj+UhB0Ty++Twwjpipr2KQMNmu9RZEwPtbyjqE69yXkDWy1oM3o51uPnpK0RUH+ZE+B0StTG6CMzVY3gW+kQX96Ow+LYkhgn/YjfubVvKO7QHz8Nd1hOxg78tn1ZTHIazN7p3bJejpsZoU92cNCcx1xM0vV/rXNN1pLxzJOBxNC9tU9FNJAaLsg5kAVGZi8Xvu62nUmkpzki71/nilHBAUxJHGIyv0H52p4DyITEN8NzR5WkqN4qBv814Dpvna1Ua3TPqiYWP/LBb+xM27DuPHKuOifePNWehE84qhQMPgArQyiNCgfKaKbaiFO+J4jiUfEV/1aztuEFyHftLoRYstmHfMkhwYHfSf683QGjlqqoL3SFClp1sKAp8WO5b5ZasT9fOGaqPWi8g28/ZGIu67wocT/hJvXxwozAycsXV36JVHs1ab/ujRYMUbcnObx8E5taKLKhWn2jYWsrJ99bUag7F6wTz1erG0eboScTD8QgVY7Zfvz0Eh1MfePOhEJGZfETR80BypC9fZhY=
diff --git a/rustc_deps/vendor/getopts/.cargo-checksum.json b/rustc_deps/vendor/getopts/.cargo-checksum.json
index e55e5e8..6bb6b13 100644
--- a/rustc_deps/vendor/getopts/.cargo-checksum.json
+++ b/rustc_deps/vendor/getopts/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"712f5383deb9b6d75bf10770ec4474660827273355363aa4306d2f3a6e905c3f","Cargo.toml":"f4915abf7c9c327ef602e73c786727152197615b39892e4ef194ea1b32f5b156","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"8c884e55b3999f01f31a8b494e523e2144a72c8ee7847d690d8e154f677c6cff","appveyor.yml":"da991211b72fa6f231af7adb84c9fb72f5a9131d1c0a3d47b8ceffe5a82c8542","src/lib.rs":"190eca840e59729dcd28439d7bc0f5e7d31fca8cfae2a3c71d7126dffb312859","tests/smoke.rs":"26a95ac42e42b766ae752fe8531fb740fd147d5cdff352dec0763d175ce91806"},"package":"0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797"}
\ No newline at end of file
+{"files":{"Cargo.toml":"f4915abf7c9c327ef602e73c786727152197615b39892e4ef194ea1b32f5b156","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"8c884e55b3999f01f31a8b494e523e2144a72c8ee7847d690d8e154f677c6cff","appveyor.yml":"da991211b72fa6f231af7adb84c9fb72f5a9131d1c0a3d47b8ceffe5a82c8542","src/lib.rs":"190eca840e59729dcd28439d7bc0f5e7d31fca8cfae2a3c71d7126dffb312859","tests/smoke.rs":"26a95ac42e42b766ae752fe8531fb740fd147d5cdff352dec0763d175ce91806"},"package":"0a7292d30132fb5424b354f5dc02512a86e4c516fe544bb7a25e7f266951b797"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/getopts/.travis.yml b/rustc_deps/vendor/getopts/.travis.yml
deleted file mode 100644
index 8f82173..0000000
--- a/rustc_deps/vendor/getopts/.travis.yml
+++ /dev/null
@@ -1,22 +0,0 @@
-language: rust
-rust:
-  - 1.18.0 # don't forget to update the readme too
-  - stable
-  - beta
-  - nightly
-sudo: false
-before_script:
-  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-script:
-  - cargo build --verbose
-  - cargo test --verbose
-  - cargo doc --no-deps
-after_success:
-  - travis-cargo --only nightly doc-upload
-env:
-  global:
-    secure: "v7JYTHRJff4zKegaYmbqCZd3/dGAgRwPyLIvM9rRy92rUhv5eCQqsNMR3r9SYR/h7fiSLqLiQi06WmhY5i+pLG9q0Ga2YhqsVBskj5tCGk6NrzmnNKjQTyJ4Go/U8GXZRyknKOuU71e8A0RJVI2FbhQwFvnOp1KArJqgVU5/WL8="
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/h2/.cargo-checksum.json b/rustc_deps/vendor/h2/.cargo-checksum.json
index 075e370..509b21e 100644
--- a/rustc_deps/vendor/h2/.cargo-checksum.json
+++ b/rustc_deps/vendor/h2/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"1e69870e519e2232fbdd6aca79a9ccf56fcfc26a5c85c1b72e8b96fd6fa4890e","CHANGELOG.md":"09d3893f16ddedc40dc15e7d7706f39411b5f86d4340167e12700b3595366364","CONTRIBUTING.md":"149e2dfd4f8b2a8d8bcfaab09c444ff3974a7bdb070ded1de4c2d87ccb8db6f3","Cargo.toml":"40ff69cc85dfa60fa18fc19ca876a336a360de81922e34821ff4779db9aa98b5","LICENSE":"b21623012e6c453d944b0342c515b631cfcbf30704c2621b291526b69c10724d","README.md":"f8b82b3cf6dc0d11fed01b326d0c49db4723f9804df5e6f92af9b2216bf7330f","ci/h2spec.sh":"705c6a3a79bf25c6569364bef0f11edc80a0db0b7908522924f3536e6d1e7d9d","examples/akamai.rs":"1954d75ae192c688d71f34e91fb1a2acdb61a72ef7125f9f460f06d807d07525","examples/client.rs":"dc16c9613934914486bc0c2cfb83f10d057f6a803ac88282e74f2235f390b426","examples/server.rs":"10995d8bdda80e9fc942d46e6d1d95fba114682279fe6654a7170b22fc5177c4","src/client.rs":"f0285193fddff9477bfb8f04eb09455e51eb108875e44724a866f25078091d54","src/codec/error.rs":"f03da60918bf9f41e4eabb9be802c8aa7230c59118e53efe97ad9804c17057d4","src/codec/framed_read.rs":"c7f7221481b0dee5ca5d1c7c42e0ef1f51b7110b79f6f546edecc6ad90afd61c","src/codec/framed_write.rs":"3a46fd36a9f2237d14eca0e95aa9436dbaaed49940cbf44c1c517ba3c101d0c4","src/codec/mod.rs":"a2a22a4b58602a310fa8901cc4ad60deb2b6e3a8679717a41937c27d2d4f53b9","src/error.rs":"513d608f79b8e8325f67a6a01c49b136329c1487dfa0dd61a830fe0cb729828b","src/frame/data.rs":"0b415ee49a6daae460928002b21795f3cd6df2213849b22e628a09901ba2afec","src/frame/go_away.rs":"2024f4fd475a78c2206d28a668d8931e4e579d32f2291db97a259db4abfe334f","src/frame/head.rs":"9e8763b719c4d7116d7b12b4dcc9c344791c3c64500e0acfd52d3679e4ca8a58","src/frame/headers.rs":"dccc0871ff2761e3bd5efe83c51783581444d808ec0cbe57a481e2775e4d190c","src/frame/mod.rs":"020701b8e4fcc7170a2e2a84483151105cd8c595171248a9dc90030d1576b361","src/frame/ping.rs":"68e2fe2f53c39c37a3c121f10b2c0665fc4ff448f36cba4a3603b0fd3e5c9b52","src/frame/priority.rs":"3ad33b4e9a24bb5b2b8b1c92a134efa790ee8ea963b6f4475161034b99f8b5d3","src/frame/reason.rs":"5f8303d1dacc78d622d87da2fcc2324d56adbcde4ca24df7b82194774055c7e4","src/frame/reset.rs":"0595e02a3f83b4451864caecee177fdf003b10fe275a88f23cebb467c71a4444","src/frame/settings.rs":"7956e98f7a8620b904cc6ded5c0f64e32f437cf8871fba29a79b266cb2b756b4","src/frame/stream_id.rs":"088580143cdd34740c2673f50c6e0d6983b2271c011a3583621af01517f862c5","src/frame/util.rs":"116c6e6978eac18405a84806a9872754600fe88f94e6496a9677b15f7c0611f7","src/frame/window_update.rs":"9c664df42fc789050726eb4005cd38660cad7b92f46117a8fd9528761fd76ff5","src/hpack/decoder.rs":"4108a1ac1d15662f2acf8438a2bfe345e5477511a9b40d8f6ad195143bc1efb9","src/hpack/encoder.rs":"a89486e2a53bfc79806fd4ed83edd508dc9ccd495fc884cb83c940cd575c8a99","src/hpack/header.rs":"957d0180b3f475c13685761532c4e8e55013e1a13a1229ff051362b38ddded5d","src/hpack/huffman/mod.rs":"bc3bf001db39efe34f5e142723d03f1718f51cb5ab72ec5974cd7fb9b881eab9","src/hpack/huffman/table.rs":"062ddb1e4f0d4808fd64a4e62b420ea5b6a5ace0546b90f31b36d3f72b3f6619","src/hpack/mod.rs":"858049d8af16288c328e279b1d9feebf3d6a110f1991d4de3fdd64a9f4c8ed5f","src/hpack/table.rs":"f168c1e7621765fd1464c58be021a77b1da83902ded2ee7cb591eec28f6dcc52","src/hpack/test/fixture.rs":"e9c4eee1b69a8bd912532818e2fbda1a1ff8ef769070c71df1618e9f6d5c73ef","src/hpack/test/fuzz.rs":"0eebfa28de8b68f7a7b5803440b37646e8acfea5ee1ef5a4852c0b5241639fa3","src/hpack/test/mod.rs":"56ad5643e7f1e273e5bce8a6fc0552be39c326dacfffd7f9757ccdbe75e9b66e","src/lib.rs":"e216f93d062250cad0f67ec5a439cab193f9acec16f3006a1fd9a181a4708593","src/proto/connection.rs":"ccf3dc258f38869dd95f516c5fa179b921b4cf98eea6d0f81f38b76a32273dd2","src/proto/error.rs":"917228534afb2f21977a3eabbb5bad72882134c0bd59f1277999fbe16f30a5d9","src/proto/go_away.rs":"1c5513658f85c8783d25578c32d0654d77609c972bac93fb941c76f3b9a5787d","src/proto/mod.rs":"d091593f4c3bd3e1196c06f34e9b93f2511c1ecbbef0376ad61a22861e219ed3","src/proto/peer.rs":"6ffd23080daff48c398ec01d6d2e97c9216a9af773ecadbfd67149e33790596f","src/proto/ping_pong.rs":"3747fa1fc1547d0291212030e1c9b98e17e1cf82bfa31be79d8e866cbf593459","src/proto/settings.rs":"91690f4e1c31554c26c4830ffee68de1e89a67e726dcc9119832cdc7ebaeb5e2","src/proto/streams/buffer.rs":"d88060142edd50e23e519e9a67f926e5f5fa5e49fe5c2c2868f330f840290ec9","src/proto/streams/counts.rs":"6ee0e1dc45b6dae820a6f7297b8ea64e0b0ceafe614e40277ef0c577df909683","src/proto/streams/flow_control.rs":"c39d5b77a94c12c724d7a9d391266119af355b12caf2c24169c11b3dfd3bbafa","src/proto/streams/mod.rs":"80877f6f7325d40a41cf0c6f24f22469cedbc9eaf70aa190198cec9c8cd54758","src/proto/streams/prioritize.rs":"d32b574d84e3dcabcfb9d7e8e29140c0a01ce0322c3a5350ac94d04702b7be07","src/proto/streams/recv.rs":"f21938b5b4241b82a06e4ab552ee0687386d17c845c2ffa800eea27b90fb929a","src/proto/streams/send.rs":"9109f1155e17d70c79b2dc4b080cb9361f80e8fc58d50c9ea03b4bb26381fb10","src/proto/streams/state.rs":"0bddf933578280d1bc5e9780b7fc5ec6f1148579412a28dbce0a25bd67bd3f1a","src/proto/streams/store.rs":"13c0867be760f71942df98d5e964d56a467996faed338a2056a7735fbb770719","src/proto/streams/stream.rs":"988e61b8a90216a809a6bd2c920e2b46a34f0fc3d25fb0e5ba997091c0c0af6a","src/proto/streams/streams.rs":"09d2ee2d1e649af2c2d847716eb00e552608c738733ee30f098d05aa572ba4ea","src/server.rs":"33353eb33327a9e1051769688014a8920ba7894e90d4233c31f358b0ce86e865","src/share.rs":"15f0d94daddb266902f2661a7eb4ba578053bffbdc4df5b46ac89a23f34e2ea1"},"package":"7dd33bafe2e6370e6c8eb0cf1b8c5f93390b90acde7e9b03723f166b28b648ed"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"09d3893f16ddedc40dc15e7d7706f39411b5f86d4340167e12700b3595366364","CONTRIBUTING.md":"149e2dfd4f8b2a8d8bcfaab09c444ff3974a7bdb070ded1de4c2d87ccb8db6f3","Cargo.toml":"40ff69cc85dfa60fa18fc19ca876a336a360de81922e34821ff4779db9aa98b5","LICENSE":"b21623012e6c453d944b0342c515b631cfcbf30704c2621b291526b69c10724d","README.md":"f8b82b3cf6dc0d11fed01b326d0c49db4723f9804df5e6f92af9b2216bf7330f","ci/h2spec.sh":"705c6a3a79bf25c6569364bef0f11edc80a0db0b7908522924f3536e6d1e7d9d","examples/akamai.rs":"1954d75ae192c688d71f34e91fb1a2acdb61a72ef7125f9f460f06d807d07525","examples/client.rs":"dc16c9613934914486bc0c2cfb83f10d057f6a803ac88282e74f2235f390b426","examples/server.rs":"10995d8bdda80e9fc942d46e6d1d95fba114682279fe6654a7170b22fc5177c4","src/client.rs":"f0285193fddff9477bfb8f04eb09455e51eb108875e44724a866f25078091d54","src/codec/error.rs":"f03da60918bf9f41e4eabb9be802c8aa7230c59118e53efe97ad9804c17057d4","src/codec/framed_read.rs":"c7f7221481b0dee5ca5d1c7c42e0ef1f51b7110b79f6f546edecc6ad90afd61c","src/codec/framed_write.rs":"3a46fd36a9f2237d14eca0e95aa9436dbaaed49940cbf44c1c517ba3c101d0c4","src/codec/mod.rs":"a2a22a4b58602a310fa8901cc4ad60deb2b6e3a8679717a41937c27d2d4f53b9","src/error.rs":"513d608f79b8e8325f67a6a01c49b136329c1487dfa0dd61a830fe0cb729828b","src/frame/data.rs":"0b415ee49a6daae460928002b21795f3cd6df2213849b22e628a09901ba2afec","src/frame/go_away.rs":"2024f4fd475a78c2206d28a668d8931e4e579d32f2291db97a259db4abfe334f","src/frame/head.rs":"9e8763b719c4d7116d7b12b4dcc9c344791c3c64500e0acfd52d3679e4ca8a58","src/frame/headers.rs":"dccc0871ff2761e3bd5efe83c51783581444d808ec0cbe57a481e2775e4d190c","src/frame/mod.rs":"020701b8e4fcc7170a2e2a84483151105cd8c595171248a9dc90030d1576b361","src/frame/ping.rs":"68e2fe2f53c39c37a3c121f10b2c0665fc4ff448f36cba4a3603b0fd3e5c9b52","src/frame/priority.rs":"3ad33b4e9a24bb5b2b8b1c92a134efa790ee8ea963b6f4475161034b99f8b5d3","src/frame/reason.rs":"5f8303d1dacc78d622d87da2fcc2324d56adbcde4ca24df7b82194774055c7e4","src/frame/reset.rs":"0595e02a3f83b4451864caecee177fdf003b10fe275a88f23cebb467c71a4444","src/frame/settings.rs":"7956e98f7a8620b904cc6ded5c0f64e32f437cf8871fba29a79b266cb2b756b4","src/frame/stream_id.rs":"088580143cdd34740c2673f50c6e0d6983b2271c011a3583621af01517f862c5","src/frame/util.rs":"116c6e6978eac18405a84806a9872754600fe88f94e6496a9677b15f7c0611f7","src/frame/window_update.rs":"9c664df42fc789050726eb4005cd38660cad7b92f46117a8fd9528761fd76ff5","src/hpack/decoder.rs":"4108a1ac1d15662f2acf8438a2bfe345e5477511a9b40d8f6ad195143bc1efb9","src/hpack/encoder.rs":"a89486e2a53bfc79806fd4ed83edd508dc9ccd495fc884cb83c940cd575c8a99","src/hpack/header.rs":"957d0180b3f475c13685761532c4e8e55013e1a13a1229ff051362b38ddded5d","src/hpack/huffman/mod.rs":"bc3bf001db39efe34f5e142723d03f1718f51cb5ab72ec5974cd7fb9b881eab9","src/hpack/huffman/table.rs":"062ddb1e4f0d4808fd64a4e62b420ea5b6a5ace0546b90f31b36d3f72b3f6619","src/hpack/mod.rs":"858049d8af16288c328e279b1d9feebf3d6a110f1991d4de3fdd64a9f4c8ed5f","src/hpack/table.rs":"f168c1e7621765fd1464c58be021a77b1da83902ded2ee7cb591eec28f6dcc52","src/hpack/test/fixture.rs":"e9c4eee1b69a8bd912532818e2fbda1a1ff8ef769070c71df1618e9f6d5c73ef","src/hpack/test/fuzz.rs":"0eebfa28de8b68f7a7b5803440b37646e8acfea5ee1ef5a4852c0b5241639fa3","src/hpack/test/mod.rs":"56ad5643e7f1e273e5bce8a6fc0552be39c326dacfffd7f9757ccdbe75e9b66e","src/lib.rs":"e216f93d062250cad0f67ec5a439cab193f9acec16f3006a1fd9a181a4708593","src/proto/connection.rs":"ccf3dc258f38869dd95f516c5fa179b921b4cf98eea6d0f81f38b76a32273dd2","src/proto/error.rs":"917228534afb2f21977a3eabbb5bad72882134c0bd59f1277999fbe16f30a5d9","src/proto/go_away.rs":"1c5513658f85c8783d25578c32d0654d77609c972bac93fb941c76f3b9a5787d","src/proto/mod.rs":"d091593f4c3bd3e1196c06f34e9b93f2511c1ecbbef0376ad61a22861e219ed3","src/proto/peer.rs":"6ffd23080daff48c398ec01d6d2e97c9216a9af773ecadbfd67149e33790596f","src/proto/ping_pong.rs":"3747fa1fc1547d0291212030e1c9b98e17e1cf82bfa31be79d8e866cbf593459","src/proto/settings.rs":"91690f4e1c31554c26c4830ffee68de1e89a67e726dcc9119832cdc7ebaeb5e2","src/proto/streams/buffer.rs":"d88060142edd50e23e519e9a67f926e5f5fa5e49fe5c2c2868f330f840290ec9","src/proto/streams/counts.rs":"6ee0e1dc45b6dae820a6f7297b8ea64e0b0ceafe614e40277ef0c577df909683","src/proto/streams/flow_control.rs":"c39d5b77a94c12c724d7a9d391266119af355b12caf2c24169c11b3dfd3bbafa","src/proto/streams/mod.rs":"80877f6f7325d40a41cf0c6f24f22469cedbc9eaf70aa190198cec9c8cd54758","src/proto/streams/prioritize.rs":"d32b574d84e3dcabcfb9d7e8e29140c0a01ce0322c3a5350ac94d04702b7be07","src/proto/streams/recv.rs":"f21938b5b4241b82a06e4ab552ee0687386d17c845c2ffa800eea27b90fb929a","src/proto/streams/send.rs":"9109f1155e17d70c79b2dc4b080cb9361f80e8fc58d50c9ea03b4bb26381fb10","src/proto/streams/state.rs":"0bddf933578280d1bc5e9780b7fc5ec6f1148579412a28dbce0a25bd67bd3f1a","src/proto/streams/store.rs":"13c0867be760f71942df98d5e964d56a467996faed338a2056a7735fbb770719","src/proto/streams/stream.rs":"988e61b8a90216a809a6bd2c920e2b46a34f0fc3d25fb0e5ba997091c0c0af6a","src/proto/streams/streams.rs":"09d2ee2d1e649af2c2d847716eb00e552608c738733ee30f098d05aa572ba4ea","src/server.rs":"33353eb33327a9e1051769688014a8920ba7894e90d4233c31f358b0ce86e865","src/share.rs":"15f0d94daddb266902f2661a7eb4ba578053bffbdc4df5b46ac89a23f34e2ea1"},"package":"7dd33bafe2e6370e6c8eb0cf1b8c5f93390b90acde7e9b03723f166b28b648ed"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/h2/.travis.yml b/rustc_deps/vendor/h2/.travis.yml
deleted file mode 100644
index 9475be9..0000000
--- a/rustc_deps/vendor/h2/.travis.yml
+++ /dev/null
@@ -1,65 +0,0 @@
----
-language: rust
-dist: trusty
-sudo: false
-
-cache:
-  cargo: true
-  apt: true
-
-addons:
-  apt:
-    packages:
-    - libssl-dev
-
-matrix:
-  include:
-  - rust: nightly
-  - rust: stable
-    before_deploy: cargo doc --no-deps
-  allow_failures:
-    - rust: nightly
-
-before_script:
-  - cargo clean
-
-script:
-  # Build without unstable flag
-  - cargo build
-
-  # Test examples in README.
-  - rustdoc --test README.md -L target/debug -L target/debug/deps
-
-  # Check with unstable flag
-  - cargo check --features unstable
-
-  # Run tests, this includes lib tests and doc tests
-  - RUST_TEST_THREADS=1 cargo test
-
-  # Run integration tests
-  - cargo test -p h2-tests
-
-  # Run h2spec on stable
-  - if [ "${TRAVIS_RUST_VERSION}" = "stable" ]; then ./ci/h2spec.sh; fi
-
-  # Check minimal versions
-  - if [ "${TRAVIS_RUST_VERSION}" = "nightly" ]; then cargo clean; cargo check -Z minimal-versions; fi
-
-deploy:
-  provider:  pages
-  skip_cleanup: true
-  github_token: $GH_TOKEN
-  target_branch: gh-pages
-  local_dir: target/doc
-  on:
-    branch: master
-    repo: carllerche/h2
-    rust: stable
-
-env:
-  global:
-    secure: LkjG3IYPu7GY7zuMdYyLtdvjR4a6elX6or1Du7LTBz4JSlQXYAaj6DxhfZfm4d1kECIlnJJ2T21BqDoJDnld5lLu6VcXQ2ZEo/2f2k77GQ/9w3erwcDtqxK02rPoslFNzSd2SCdafjGKdbcvGW2HVBEu5gYEfOdu1Cdy6Av3+vLPk5To50khBQY90Kk+cmSd7J0+CHw/wSXnVgIVoO4742+aj5pxZQLx3lsi3ZPzIh1VL4QOUlaI98ybrCVNxADQCeXRRDzj0d8NzeKlkm8eXpgpiMVRJWURMa3rU2sHU9wh+YjMyoqGZWv2LlzG5LBqde3RWPQ99ebxVhlly6RgEom8yvZbavcGJ4BA0OjviLYAMb1Wjlu1paLZikEqlvTojhpzz3PVuIBZHl+rUgnUfkuhfmMzTBJTPHPMP0GtqpIAGpyRwbv56DquuEiubl70FZmz52sXGDseoABv9jQ4SNJrDrA+bfIWkPpWwqnKaWIgGPl0n3GKeceQM3RshpaE59awYUDS4ybjtacb2Fr99fx25mTO2W4x5hcDqAvBohxRPXgRB2y0ZmrcJyCV3rfkiGFUK7H8ZBqNQ6GG/GYilgj40q6TgcnXxUxyKkykDiS9VU0QAjAwz0pkCNipJ+ImS1j0LHEOcKMKZ7OsGOuSqBmF24ewBs+XzXY7dTnM/Xc=
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/hex/.cargo-checksum.json b/rustc_deps/vendor/hex/.cargo-checksum.json
index b8c3c62..f895a84 100644
--- a/rustc_deps/vendor/hex/.cargo-checksum.json
+++ b/rustc_deps/vendor/hex/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"4d1af7257c9619f7ae66fc271ba2c1be5f063640ae8ceaa235c8c8aaf32f44ea","Cargo.toml":"d9c55f4e40fd24f030330fd8acab6351f770d984673b61d9a06c80fa43062a44","Dockerfile":"848bfa32df9114e6c3cd67602e8021c9aa72978869176c575089d4c91a5fe518","LICENSE-APACHE":"c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08","LICENSE-MIT":"8eaaec6844a218b3e6db13851f9b34656f3293c715ee3523378ad4a2e4b70685","README.md":"ec6c72acc52cdf215fb51a9bb9b54c9efa050e540137a4e244e9677596da5349","src/lib.rs":"3f053e512f8a609ce57b53464bd4436592b711a54be1145846ea1cdcd05b570d"},"package":"805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"}
\ No newline at end of file
+{"files":{"Cargo.toml":"d9c55f4e40fd24f030330fd8acab6351f770d984673b61d9a06c80fa43062a44","Dockerfile":"848bfa32df9114e6c3cd67602e8021c9aa72978869176c575089d4c91a5fe518","LICENSE-APACHE":"c6596eb7be8581c18be736c846fb9173b69eccf6ef94c5135893ec56bd92ba08","LICENSE-MIT":"8eaaec6844a218b3e6db13851f9b34656f3293c715ee3523378ad4a2e4b70685","README.md":"ec6c72acc52cdf215fb51a9bb9b54c9efa050e540137a4e244e9677596da5349","src/lib.rs":"3f053e512f8a609ce57b53464bd4436592b711a54be1145846ea1cdcd05b570d"},"package":"805026a5d0141ffc30abb3be3173848ad46a1b1664fe632428479619a3644d77"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/hex/.travis.yml b/rustc_deps/vendor/hex/.travis.yml
deleted file mode 100644
index 8c91a74..0000000
--- a/rustc_deps/vendor/hex/.travis.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-language: rust
-rust:
-  - stable
-  - beta
-  - nightly
-matrix:
-  allow_failures:
-    - rust: nightly
diff --git a/rustc_deps/vendor/http/.cargo-checksum.json b/rustc_deps/vendor/http/.cargo-checksum.json
index 3990238..2fc0676 100644
--- a/rustc_deps/vendor/http/.cargo-checksum.json
+++ b/rustc_deps/vendor/http/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"09cb1d4b194db042b54948f64214f643a6af380799248a4488ce0c10b524c5e5",".travis.yml":"a3e83cca9fce4b586ed9d810b22855bb3a8879d6303608d21161bbde2fb63fbc","CHANGELOG.md":"0cfcc447d87eff70ed2fe63293576af805dd32fd02bd476d4de69df676cf89aa","Cargo.toml":"abbcf38d92ede5c6613dd3cc8859577de7f7e7e7c2b3beedf1b9a7fe749598e8","LICENSE-APACHE":"8bb1b50b0e5c9399ae33bd35fab2769010fa6c14e8860c729a52295d84896b7a","LICENSE-MIT":"dc91f8200e4b2a1f9261035d4c18c33c246911a6c0f7b543d75347e61b249cff","README.md":"f73e225735ebdcafa1ba79216261fe24828f873d8940c9f96adb37d933a93aaf","benches/header_map/basic.rs":"7e91c67c5ee59bb0f12bba735e4b2ed0b0fc2a4c0007c3920dfc66d266eeaeeb","benches/header_map/mod.rs":"601ab90cdb234f0d1e15c98d9d407f1dd44984d6abb0ecaccd9f64f1fc5255e2","benches/header_map/vec_map.rs":"6cee49372f891c21355d04c336ebd26971c42b78a2edb7e8281174d771856d2f","benches/header_value.rs":"53c765dff1ad2c7e7f9bfcb35bdbb3f9b42e3e0a537401dc691226488389062c","benches/uri.rs":"5e3e5c4cbaa69390317a32b1e8f15aa4e9425466739dd81c3d3d379c47da1457","src/byte_str.rs":"a88516a7c54e5830ef9e07382baf76151cf4d3829736656ab2688ef03848c8ae","src/convert.rs":"0fb7d797d45177728aa754a909869259d7748616da2fcfaf189cdc8365bad376","src/error.rs":"0e4df207f49be5af249870837607f8fc24102a4641a7b775f907688deff6930a","src/extensions.rs":"7e57d0ff5251bb8fb212c36168849a3f9b14ee8aa1aeed8483153908562aa07a","src/header/map.rs":"b0f06ec1187c824c0f78867aca406a2d0d306078511684ca8846f6babc1f114b","src/header/mod.rs":"941ff93360aa16e6f0cef1be5502e26b34da24a7c00077ac23366a2535b028b6","src/header/name.rs":"ace501260592fea44c601bba13595bbc8bcedbf601af4eca25b6d9d2e59c6657","src/header/value.rs":"32fe455bdb42efcb214cf3f570502fe0cedec6ed4dbfc076c98231f308614824","src/lib.rs":"6da0a94ed3625e9a25d362028c3f6dccf129b2ae7dd481bb1b6103085d1b7a89","src/method.rs":"3ecd6a176749a162fc6fc5edb29307650ea96032c1506024709675cba2172184","src/request.rs":"8d8a594068312ce7311ea813d9c658fae8a13c0e7b1853dd2567ce9f1ad55b60","src/response.rs":"90cb51393bb27ef589c4b29fa438d4d3488ae74178a24be169bfba33700e557d","src/status.rs":"11440c53df112388613a1bde2ad1b9a3bf46aacf700e070c7aa4131e3f242e14","src/uri/authority.rs":"b15f8697416741c68e7d6386701f66aedfc83e5dafc8b9fddc6783774815827c","src/uri/mod.rs":"2d0e2b2f64204f19c836bf7094aa5d0c6ccb882a6dd2741d624ef890b1b67d9b","src/uri/path.rs":"48edfcbefe0712132108924f8b0c3152679803022e23a856b8d540f80e34b558","src/uri/scheme.rs":"15bc1075699f663a17688c230792ccf645105e5d1439c494714df14b74db5d8c","src/uri/tests.rs":"c61284d98c46cb66c454c3699c2f0d2d01bd1afcce94b6e74950b463e33c9d2e","src/version.rs":"d7cea6976335425a1fd10766083f9ac74b9f8c6667c2e71abf5f0886c0a93186","tests/header_map.rs":"4b52dfd11e37353ecc242220a3db7ea8b000c373ae33f3a527c3cfeb020c6cc0","tests/header_map_fuzz.rs":"9fc39a62f89dc7794d1e29dbf70ac352b1ddf981501a59cfcca02f6fd11acd98","tests/status_code.rs":"112e27e367e2adc16d5734b6a523d6dd5208e69fd6b9e596d95111051881d10b"},"package":"24f58e8c2d8e886055c3ead7b28793e1455270b5fb39650984c224bc538ba581"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"0cfcc447d87eff70ed2fe63293576af805dd32fd02bd476d4de69df676cf89aa","Cargo.toml":"abbcf38d92ede5c6613dd3cc8859577de7f7e7e7c2b3beedf1b9a7fe749598e8","LICENSE-APACHE":"8bb1b50b0e5c9399ae33bd35fab2769010fa6c14e8860c729a52295d84896b7a","LICENSE-MIT":"dc91f8200e4b2a1f9261035d4c18c33c246911a6c0f7b543d75347e61b249cff","README.md":"f73e225735ebdcafa1ba79216261fe24828f873d8940c9f96adb37d933a93aaf","benches/header_map/basic.rs":"7e91c67c5ee59bb0f12bba735e4b2ed0b0fc2a4c0007c3920dfc66d266eeaeeb","benches/header_map/mod.rs":"601ab90cdb234f0d1e15c98d9d407f1dd44984d6abb0ecaccd9f64f1fc5255e2","benches/header_map/vec_map.rs":"6cee49372f891c21355d04c336ebd26971c42b78a2edb7e8281174d771856d2f","benches/header_value.rs":"53c765dff1ad2c7e7f9bfcb35bdbb3f9b42e3e0a537401dc691226488389062c","benches/uri.rs":"5e3e5c4cbaa69390317a32b1e8f15aa4e9425466739dd81c3d3d379c47da1457","src/byte_str.rs":"a88516a7c54e5830ef9e07382baf76151cf4d3829736656ab2688ef03848c8ae","src/convert.rs":"0fb7d797d45177728aa754a909869259d7748616da2fcfaf189cdc8365bad376","src/error.rs":"0e4df207f49be5af249870837607f8fc24102a4641a7b775f907688deff6930a","src/extensions.rs":"7e57d0ff5251bb8fb212c36168849a3f9b14ee8aa1aeed8483153908562aa07a","src/header/map.rs":"b0f06ec1187c824c0f78867aca406a2d0d306078511684ca8846f6babc1f114b","src/header/mod.rs":"941ff93360aa16e6f0cef1be5502e26b34da24a7c00077ac23366a2535b028b6","src/header/name.rs":"ace501260592fea44c601bba13595bbc8bcedbf601af4eca25b6d9d2e59c6657","src/header/value.rs":"32fe455bdb42efcb214cf3f570502fe0cedec6ed4dbfc076c98231f308614824","src/lib.rs":"6da0a94ed3625e9a25d362028c3f6dccf129b2ae7dd481bb1b6103085d1b7a89","src/method.rs":"3ecd6a176749a162fc6fc5edb29307650ea96032c1506024709675cba2172184","src/request.rs":"8d8a594068312ce7311ea813d9c658fae8a13c0e7b1853dd2567ce9f1ad55b60","src/response.rs":"90cb51393bb27ef589c4b29fa438d4d3488ae74178a24be169bfba33700e557d","src/status.rs":"11440c53df112388613a1bde2ad1b9a3bf46aacf700e070c7aa4131e3f242e14","src/uri/authority.rs":"b15f8697416741c68e7d6386701f66aedfc83e5dafc8b9fddc6783774815827c","src/uri/mod.rs":"2d0e2b2f64204f19c836bf7094aa5d0c6ccb882a6dd2741d624ef890b1b67d9b","src/uri/path.rs":"48edfcbefe0712132108924f8b0c3152679803022e23a856b8d540f80e34b558","src/uri/scheme.rs":"15bc1075699f663a17688c230792ccf645105e5d1439c494714df14b74db5d8c","src/uri/tests.rs":"c61284d98c46cb66c454c3699c2f0d2d01bd1afcce94b6e74950b463e33c9d2e","src/version.rs":"d7cea6976335425a1fd10766083f9ac74b9f8c6667c2e71abf5f0886c0a93186","tests/header_map.rs":"4b52dfd11e37353ecc242220a3db7ea8b000c373ae33f3a527c3cfeb020c6cc0","tests/header_map_fuzz.rs":"9fc39a62f89dc7794d1e29dbf70ac352b1ddf981501a59cfcca02f6fd11acd98","tests/status_code.rs":"112e27e367e2adc16d5734b6a523d6dd5208e69fd6b9e596d95111051881d10b"},"package":"24f58e8c2d8e886055c3ead7b28793e1455270b5fb39650984c224bc538ba581"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/http/.cargo_vcs_info.json b/rustc_deps/vendor/http/.cargo_vcs_info.json
deleted file mode 100644
index f82e2bf..0000000
--- a/rustc_deps/vendor/http/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "0da04d10a9b6d4bef8b7b04aaabf07833158c711"
-  }
-}
diff --git a/rustc_deps/vendor/http/.travis.yml b/rustc_deps/vendor/http/.travis.yml
deleted file mode 100644
index 053ba1f..0000000
--- a/rustc_deps/vendor/http/.travis.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-language: rust
-sudo: false
-
-cache: cargo
-
-matrix:
-  include:
-    - rust: stable
-    - rust: beta
-    - rust: nightly
-    # ensure wasm always builds
-    - rust: stable
-      script:
-        - rustup target add wasm32-unknown-unknown
-        - cargo build --target=wasm32-unknown-unknown
-    # minimum rustc version
-    - rust: 1.20.0
-      script: cargo build
-
-script:
-  - cargo test
-  - 'if [ "$TRAVIS_RUST_VERSION" == "nightly" ]; then cargo test --benches; fi'
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/httparse/.cargo-checksum.json b/rustc_deps/vendor/httparse/.cargo-checksum.json
index 81b6daa..6e45afd 100644
--- a/rustc_deps/vendor/httparse/.cargo-checksum.json
+++ b/rustc_deps/vendor/httparse/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"9652bed45fce7eec5061b37b913a9bf855ac63e4d39ea598797b43c8e7250e76",".travis.yml":"74d58528f5793df05d36a3b955c05959f2d7ce6eee35c1a9d01ad6d5eaf9ab41","Cargo.toml":"2d893bf5d1e9a5445e74c2a7a75b804492245647004155a798f5456e5c0f4712","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"ad5ce29918424008bdd8c6e7851bb064533456cbb32ec0d0955b2bc9444613d3","README.md":"b54e1e379daa12d26aadad7c1bef578a3cbcf243f2f229d8b17868c90a384d7d","benches/parse.rs":"caabd31cbcb00172bb7f31a1398dbed27a3bf36b01d69729c3d6fbd9a4008e05","build.rs":"00bab146ec6a10fac91958a06bdd4b7b4d71932e0480b6e84a4248cb339dbe79","src/iter.rs":"3f165be2f0d3bb7e0cbe37cb67560e36e06cdb5921e145446a5985c3580a6b6e","src/lib.rs":"21436cacd3b33b20ad75877e6260f34391a9215ffa6ad2c10ebf1a0c67ac07dc","src/macros.rs":"25de190f894eefb48a6992f9dc3d039d9065f908f381d683f0395d568d992275","src/simd/avx2.rs":"1b27cad7b5c210f8a1283d423ca18372127ea50f5565b9be0b83d2a51a1eb826","src/simd/fallback.rs":"0234cc11459f3225d6e3d329068a01206e39625a538bdc292e0d1beaa06a37e5","src/simd/mod.rs":"c67e118a45da679d41de0d51c2f632f64902083db4be8f636021dbfe08f0f9b4","src/simd/sse42.rs":"373f5bf0596942b9ba4497a8a89975117ec0da6d8b8c2345fe03e0d28e68627f","tests/uri.rs":"92a0dc4cfa8eee2e6b8e9109e2e0062ccb50b9ec8cb4b7c06794dab1a3e68c9c"},"package":"e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"}
\ No newline at end of file
+{"files":{"Cargo.toml":"2d893bf5d1e9a5445e74c2a7a75b804492245647004155a798f5456e5c0f4712","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"ad5ce29918424008bdd8c6e7851bb064533456cbb32ec0d0955b2bc9444613d3","README.md":"b54e1e379daa12d26aadad7c1bef578a3cbcf243f2f229d8b17868c90a384d7d","benches/parse.rs":"caabd31cbcb00172bb7f31a1398dbed27a3bf36b01d69729c3d6fbd9a4008e05","build.rs":"00bab146ec6a10fac91958a06bdd4b7b4d71932e0480b6e84a4248cb339dbe79","src/iter.rs":"3f165be2f0d3bb7e0cbe37cb67560e36e06cdb5921e145446a5985c3580a6b6e","src/lib.rs":"21436cacd3b33b20ad75877e6260f34391a9215ffa6ad2c10ebf1a0c67ac07dc","src/macros.rs":"25de190f894eefb48a6992f9dc3d039d9065f908f381d683f0395d568d992275","src/simd/avx2.rs":"1b27cad7b5c210f8a1283d423ca18372127ea50f5565b9be0b83d2a51a1eb826","src/simd/fallback.rs":"0234cc11459f3225d6e3d329068a01206e39625a538bdc292e0d1beaa06a37e5","src/simd/mod.rs":"c67e118a45da679d41de0d51c2f632f64902083db4be8f636021dbfe08f0f9b4","src/simd/sse42.rs":"373f5bf0596942b9ba4497a8a89975117ec0da6d8b8c2345fe03e0d28e68627f","tests/uri.rs":"92a0dc4cfa8eee2e6b8e9109e2e0062ccb50b9ec8cb4b7c06794dab1a3e68c9c"},"package":"e8734b0cfd3bc3e101ec59100e101c2eecd19282202e87808b3037b442777a83"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/httparse/.cargo_vcs_info.json b/rustc_deps/vendor/httparse/.cargo_vcs_info.json
deleted file mode 100644
index 78cf4c6..0000000
--- a/rustc_deps/vendor/httparse/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "dfe8a56dd343189e7cdce01d7ef835e3920cbdc2"
-  }
-}
diff --git a/rustc_deps/vendor/httparse/.travis.yml b/rustc_deps/vendor/httparse/.travis.yml
deleted file mode 100644
index 3d239ba..0000000
--- a/rustc_deps/vendor/httparse/.travis.yml
+++ /dev/null
@@ -1,69 +0,0 @@
-language: rust
-sudo: false
-dist: trusty
-
-rust:
-    - nightly
-    - beta
-    - stable
-
-env:
-    -
-    - CARGO_CFG_HTTPARSE_DISABLE_SIMD=1
-    - CARGO_CFG_HTTPARSE_DISABLE_SIMD_COMPILETIME=1 RUSTFLAGS="-C target_feature=+sse4.2"
-    - RUSTFLAGS="-C target_feature=+sse4.2"
-
-matrix:
-    fast_finish: true
-    include:
-        - rust: 1.10.0 # minimum Rust version
-          script: # don't run tests, since dev-dependencies don't build on 1.10
-              - cargo build --no-default-features
-              - cargo build
-
-        # with sudo the worker has avx2 support
-        - rust: nightly
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+avx2"
-        - rust: nightly
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=sse4.2"
-        - rust: nightly
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+sse4.2,+avx2"
-        - rust: nightly
-          sudo: true
-          env: CARGO_CFG_HTTPARSE_DISABLE_SIMD_COMPILETIME=1 RUSTFLAGS="-C target_feature=+sse4.2,+avx2"
-
-        - rust: beta
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+avx2"
-        - rust: beta
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+sse4.2"
-        - rust: beta
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+sse4.2,+avx2"
-        - rust: beta
-          sudo: true
-          env: CARGO_CFG_HTTPARSE_DISABLE_SIMD_COMPILETIME=1 RUSTFLAGS="-C target_feature=+sse4.2,+avx2"
-
-        - rust: stable
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+avx2"
-        - rust: stable
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+sse4.2"
-        - rust: stable
-          sudo: true
-          env: RUSTFLAGS="-C target_feature=+sse4.2,+avx2"
-        - rust: stable
-          sudo: true
-          env: CARGO_CFG_HTTPARSE_DISABLE_SIMD_COMPILETIME=1 RUSTFLAGS="-C target_feature=+sse4.2,+avx2"
-
-script:
-    - cargo build --no-default-features
-    - cargo test --no-default-features
-    - cargo build
-    - cargo test
-
diff --git a/rustc_deps/vendor/hyper/.cargo-checksum.json b/rustc_deps/vendor/hyper/.cargo-checksum.json
index 59cfaca..c310417 100644
--- a/rustc_deps/vendor/hyper/.cargo-checksum.json
+++ b/rustc_deps/vendor/hyper/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"302d7d40a0c7fee4eda7f52a7107111024eba6f73919f50a664933472718cd5d","Cargo.toml":"ea2987df1f7e8f8d8998a2816530e40424ed721dbdfb031e2b8b03dac3ec7ba5","LICENSE":"df9cfd06d8a44d9a671eadd39ffd97f166481da015a30f45dfd27886209c5922","src/body/body.rs":"7b45e29ed498cb2d543ada08d4e3e3f7faff8a96d76cc15d4d61070a79044f6a","src/body/chunk.rs":"74edcd27bb824094fd2cccffbdf1cb0561949520eab228185986495bc0a7986c","src/body/mod.rs":"aaa253d1e4aa6128388c22b6107600af450ff5c2610eeafe53ecbca31ac2d7f7","src/body/payload.rs":"3d44bf7a99b4a51651f0f2518590b89f332b0263e1bba2352547da4ef0be63e1","src/client/conn.rs":"5e580df0883d90e4cc68af29bf5197f618d770118bf29cd941e0224c82b88dd1","src/client/connect/dns.rs":"deb0906ad7158bea09b1455755fce0a7ed65e66427655c8ec0bc5e957bf72625","src/client/connect/http.rs":"1cc3b34f9912ca4c0fad4fbdd963e176252c99b1945467fae0f9d73d96378dcc","src/client/connect/mod.rs":"de557132881160f089ae0995bf176aebe6be5db2cf05762dd5d034a2b8e1bde9","src/client/dispatch.rs":"7a155b77f5b4dd7735dce1dc9936cba778a1de2c4497964ee927b1d2fbdb1e8a","src/client/mod.rs":"0f5e0beb6c42d14f5811317a0940765299a4bfb663ea298a77c886c327408e4e","src/client/pool.rs":"a0a015fbda85758a9b5fe601e516823321642a178c140033afbe3de1da6ad6c9","src/client/tests.rs":"424ce58d8ff8e82fdb071cee4653dbd10fd3abd25bdcbb4e5cee3d1711618a45","src/common/buf.rs":"5ff16c21fc0c73577781dee68ef43d38eaefdcfa8e4d0a11bdb5cff663a76e8a","src/common/drain.rs":"c6404458c894634683696ca93060942c2aceb8b5ab088392553a679cde9fbc73","src/common/exec.rs":"4bf41e883cf3cef427d1b6e9bd5278970febd99b200399dfdf2c0c623b2f2ac7","src/common/io/mod.rs":"6f8e4518df7f24d81fc59b46a2deb61557e8d92700bdc62539fe0f034066fc89","src/common/io/rewind.rs":"205d904384476023969b134609486bbd8c2ee8457d0c7cd486c8424f576577e8","src/common/lazy.rs":"c065c2117cf79f91cebab6a0919ae34c2929b4eec75deb843fd2a9b4b7424a59","src/common/mod.rs":"8ec60e8e3c39087c1c8b6ab4f27e2548b6a20ed0cf46abd771183a1f7fe33d7e","src/common/never.rs":"d2f6345add7df1a32a6a37179d9abc9c25e633d422abde923201b9c54bf00bd0","src/error.rs":"1715912a46ed4fc71479274818f687af2b5cff770172a501835001c58940beeb","src/headers.rs":"a7a847d48c731a22d0fb105b8d668fb58020831b40ce29edd0622781eb99937b","src/lib.rs":"c85fbd8fae59c0c681421a21ce1b75880ea9e5181bfff45ef6c8010e343e2f8f","src/mock.rs":"b19d6036cd85e0ee443903533684e79fa64330a3ab73f538d6e8c0589cb8833f","src/proto/h1/conn.rs":"83e4f8e4e7a22a50b994a004e9b6e719b56b02a37b1172b0a3e563a4d0e2f692","src/proto/h1/date.rs":"67ce8f2d8f2a615080f059feefd9e19ec8ba064c7e09c5efbb774c5c8e92cf0d","src/proto/h1/decode.rs":"fbd2b09a46537d88c7cd8d908bdd34b7aacc390086fb044756c8a8ea0913a90f","src/proto/h1/dispatch.rs":"b7c283d1c75b5bc8abcee752ff5d88c385ef25d391484c5976f9f849a87ec756","src/proto/h1/encode.rs":"b20efa2b5fcf2959d7da59b6153a9e30bcdc2d4b218b6c442877e275e0acd6c8","src/proto/h1/io.rs":"d1e8cfe342151cefa66a0c1985d3483e31b1bfd130232d534c315b3ce48e6ffb","src/proto/h1/mod.rs":"4f5e18d15886f60510cdbe39366c91c18d5ddf90254cec4030499831f7a404d6","src/proto/h1/role.rs":"c84f7a1e4ff2dd40b03bc6fa8408611411a199198677c1d1a4b920ec2ad251cb","src/proto/h2/client.rs":"e8ddc2d96315d5becf4d4d23e75db2acf21a80c115453a648f7bb946f6801c4b","src/proto/h2/mod.rs":"5fa9dbc655455a449145487fbb3e96a1b35b6f1d7adb62978035cb127dae0224","src/proto/h2/server.rs":"d9a4f460a452f306b6f58e45b6e7afb01dc159d92b656c57489a1e8133d06d08","src/proto/mod.rs":"1762e5443c8ee6ea7ecb4870ade6e750799d86b4667bb5162f11d60cd87c41a5","src/rt.rs":"df55114f40696f5a1e79c7c818c6feb91d479fc00ac5f1775c1d0fdb30168118","src/server/conn.rs":"69e76e6ae56cb4ccfe7ffe33d428c2a149847f4501d2bab0e10876eeba4fa7fe","src/server/mod.rs":"f6768cd7a7c894bb4ac13f0c265c04532056cd3c7aac37f4b00be88c3c4f8583","src/server/shutdown.rs":"e5c87509c9005dc30841b196fab3e97ceb05e2d29785d85624b5fed77a4284f4","src/server/tcp.rs":"4fe4ef37e6abe0beb22cb4628e31ae341ef8f50f212a39e81345157e359be19c","src/service/mod.rs":"00cc9e24bcf1e3a76b4c2f8d48fab70dc67430fb8705015ce7d6641ac6516b5d","src/service/new_service.rs":"20b2a6c4403ca5a3b395d823ad8bf75fa4af329007424a4ded4f3292e864ea7c","src/service/service.rs":"e6e8edebef5a5b855350f71b1351574f90267f7e6ddae24d6f409ddd6bddb130","src/upgrade.rs":"75ce6ceb7e4b4e2f8bd5a3992327332955ea63aafbb2acd635b559dd4d62c86b"},"package":"95ffee0d1d30de4313fdaaa485891ce924991d45bbc18adfc8ac5b1639e62fbb"}
\ No newline at end of file
+{"files":{"Cargo.toml":"42742d76cd9f82028d4a87a581ef7546df67268c9e96af49a696197df817bcb7","LICENSE":"df9cfd06d8a44d9a671eadd39ffd97f166481da015a30f45dfd27886209c5922","src/body/body.rs":"7b45e29ed498cb2d543ada08d4e3e3f7faff8a96d76cc15d4d61070a79044f6a","src/body/chunk.rs":"74edcd27bb824094fd2cccffbdf1cb0561949520eab228185986495bc0a7986c","src/body/mod.rs":"aaa253d1e4aa6128388c22b6107600af450ff5c2610eeafe53ecbca31ac2d7f7","src/body/payload.rs":"3d44bf7a99b4a51651f0f2518590b89f332b0263e1bba2352547da4ef0be63e1","src/client/conn.rs":"293cac398d8fd8a54b1859f6571a6221a706db55ab66c1507d6810b662f00eb1","src/client/connect/dns.rs":"deb0906ad7158bea09b1455755fce0a7ed65e66427655c8ec0bc5e957bf72625","src/client/connect/http.rs":"1cc3b34f9912ca4c0fad4fbdd963e176252c99b1945467fae0f9d73d96378dcc","src/client/connect/mod.rs":"287701fcb957bdfd2e5dcb8139f82c79cf900289a0895a6d28270957b38c0a7e","src/client/dispatch.rs":"7a155b77f5b4dd7735dce1dc9936cba778a1de2c4497964ee927b1d2fbdb1e8a","src/client/mod.rs":"3b397beb011b784b399f281cbe1563f08a45f88ab147eb105b7a36fb9c5eefe3","src/client/pool.rs":"b4d570264bd3e7023d74de3f7383d831eafded9fc49db5a21986b89bda2af87b","src/client/tests.rs":"f31a26a2d0d115b98514b11e4fb70fa73196db95bc54759eb035bba4fe85b0c8","src/common/buf.rs":"5ff16c21fc0c73577781dee68ef43d38eaefdcfa8e4d0a11bdb5cff663a76e8a","src/common/drain.rs":"c5e1fb98ae9da657c817898b284d77dfe362e8a5ed2b5bcc3ab661094cdbcc5b","src/common/exec.rs":"4bf41e883cf3cef427d1b6e9bd5278970febd99b200399dfdf2c0c623b2f2ac7","src/common/io/mod.rs":"6f8e4518df7f24d81fc59b46a2deb61557e8d92700bdc62539fe0f034066fc89","src/common/io/rewind.rs":"205d904384476023969b134609486bbd8c2ee8457d0c7cd486c8424f576577e8","src/common/lazy.rs":"c065c2117cf79f91cebab6a0919ae34c2929b4eec75deb843fd2a9b4b7424a59","src/common/mod.rs":"8ec60e8e3c39087c1c8b6ab4f27e2548b6a20ed0cf46abd771183a1f7fe33d7e","src/common/never.rs":"d2f6345add7df1a32a6a37179d9abc9c25e633d422abde923201b9c54bf00bd0","src/error.rs":"1715912a46ed4fc71479274818f687af2b5cff770172a501835001c58940beeb","src/headers.rs":"a7a847d48c731a22d0fb105b8d668fb58020831b40ce29edd0622781eb99937b","src/lib.rs":"d12968ee4c047cb30e9e67cd4431911d64a2a3ca9c5baa9249c9a0993ff09e26","src/mock.rs":"bb9f3e1f8b302dca7bf9387c7313f9c5a654bb6a2d822e5fe3b80b772b80e30e","src/proto/h1/conn.rs":"83e4f8e4e7a22a50b994a004e9b6e719b56b02a37b1172b0a3e563a4d0e2f692","src/proto/h1/date.rs":"67ce8f2d8f2a615080f059feefd9e19ec8ba064c7e09c5efbb774c5c8e92cf0d","src/proto/h1/decode.rs":"fbd2b09a46537d88c7cd8d908bdd34b7aacc390086fb044756c8a8ea0913a90f","src/proto/h1/dispatch.rs":"b7c283d1c75b5bc8abcee752ff5d88c385ef25d391484c5976f9f849a87ec756","src/proto/h1/encode.rs":"b20efa2b5fcf2959d7da59b6153a9e30bcdc2d4b218b6c442877e275e0acd6c8","src/proto/h1/io.rs":"d1e8cfe342151cefa66a0c1985d3483e31b1bfd130232d534c315b3ce48e6ffb","src/proto/h1/mod.rs":"4f5e18d15886f60510cdbe39366c91c18d5ddf90254cec4030499831f7a404d6","src/proto/h1/role.rs":"6d0dc397574f4e0f1adf2bd0487e713d7cf348eee0fb4ee02948db4686c9a174","src/proto/h2/client.rs":"e8ddc2d96315d5becf4d4d23e75db2acf21a80c115453a648f7bb946f6801c4b","src/proto/h2/mod.rs":"5fa9dbc655455a449145487fbb3e96a1b35b6f1d7adb62978035cb127dae0224","src/proto/h2/server.rs":"d9a4f460a452f306b6f58e45b6e7afb01dc159d92b656c57489a1e8133d06d08","src/proto/mod.rs":"1762e5443c8ee6ea7ecb4870ade6e750799d86b4667bb5162f11d60cd87c41a5","src/rt.rs":"df55114f40696f5a1e79c7c818c6feb91d479fc00ac5f1775c1d0fdb30168118","src/server/conn.rs":"69e76e6ae56cb4ccfe7ffe33d428c2a149847f4501d2bab0e10876eeba4fa7fe","src/server/mod.rs":"f6768cd7a7c894bb4ac13f0c265c04532056cd3c7aac37f4b00be88c3c4f8583","src/server/shutdown.rs":"e5c87509c9005dc30841b196fab3e97ceb05e2d29785d85624b5fed77a4284f4","src/server/tcp.rs":"4fe4ef37e6abe0beb22cb4628e31ae341ef8f50f212a39e81345157e359be19c","src/service/mod.rs":"00cc9e24bcf1e3a76b4c2f8d48fab70dc67430fb8705015ce7d6641ac6516b5d","src/service/new_service.rs":"20b2a6c4403ca5a3b395d823ad8bf75fa4af329007424a4ded4f3292e864ea7c","src/service/service.rs":"e6e8edebef5a5b855350f71b1351574f90267f7e6ddae24d6f409ddd6bddb130","src/upgrade.rs":"75ce6ceb7e4b4e2f8bd5a3992327332955ea63aafbb2acd635b559dd4d62c86b"},"package":"2f60ae467ef4fc5eba9a34d31648c9c8ed902faf45a217f6734ce9ea64779ac7"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/hyper/.cargo_vcs_info.json b/rustc_deps/vendor/hyper/.cargo_vcs_info.json
deleted file mode 100644
index 0886676..0000000
--- a/rustc_deps/vendor/hyper/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "3af6aa80af58d9d2078f381d1f9e1d216d83aedc"
-  }
-}
diff --git a/rustc_deps/vendor/hyper/Cargo.toml b/rustc_deps/vendor/hyper/Cargo.toml
index d7b5646..e17caaa 100644
--- a/rustc_deps/vendor/hyper/Cargo.toml
+++ b/rustc_deps/vendor/hyper/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "hyper"
-version = "0.12.13"
+version = "0.12.14"
 authors = ["Sean McArthur <sean@seanmonstar.com>"]
 include = ["Cargo.toml", "LICENSE", "src/**/*"]
 description = "A fast and correct HTTP library."
diff --git a/rustc_deps/vendor/hyper/src/client/conn.rs b/rustc_deps/vendor/hyper/src/client/conn.rs
index 60a0478..3d0f15a 100644
--- a/rustc_deps/vendor/hyper/src/client/conn.rs
+++ b/rustc_deps/vendor/hyper/src/client/conn.rs
@@ -466,6 +466,7 @@
         T: AsyncRead + AsyncWrite + Send + 'static,
         B: Payload + 'static,
     {
+        trace!("client handshake HTTP/{}", if self.http2 { 2 } else { 1 });
         Handshake {
             builder: self.clone(),
             io: Some(io),
diff --git a/rustc_deps/vendor/hyper/src/client/connect/mod.rs b/rustc_deps/vendor/hyper/src/client/connect/mod.rs
index 4754f64..7d0a70b 100644
--- a/rustc_deps/vendor/hyper/src/client/connect/mod.rs
+++ b/rustc_deps/vendor/hyper/src/client/connect/mod.rs
@@ -36,7 +36,6 @@
 /// A set of properties to describe where and how to try to connect.
 #[derive(Clone, Debug)]
 pub struct Destination {
-    //pub(super) alpn: Alpn,
     pub(super) uri: Uri,
 }
 
@@ -46,21 +45,18 @@
 /// was used, or if connected to an HTTP proxy.
 #[derive(Debug)]
 pub struct Connected {
-    //alpn: Alpn,
+    pub(super) alpn: Alpn,
     pub(super) is_proxied: bool,
     pub(super) extra: Option<Extra>,
 }
 
 pub(super) struct Extra(Box<ExtraInner>);
 
-/*TODO: when HTTP1 Upgrades to H2 are added, this will be needed
-#[derive(Debug)]
+#[derive(Clone, Copy, Debug, PartialEq)]
 pub(super) enum Alpn {
-    Http1,
-    //H2,
-    //Http1OrH2
+    H2,
+    None,
 }
-*/
 
 impl Destination {
     /// Get the protocol scheme.
@@ -246,7 +242,7 @@
     /// Create new `Connected` type with empty metadata.
     pub fn new() -> Connected {
         Connected {
-            //alpn: Alpn::Http1,
+            alpn: Alpn::None,
             is_proxied: false,
             extra: None,
         }
@@ -274,19 +270,18 @@
         self
     }
 
-    /*
     /// Set that the connected transport negotiated HTTP/2 as it's
     /// next protocol.
-    pub fn h2(mut self) -> Connected {
+    pub fn negotiated_h2(mut self) -> Connected {
         self.alpn = Alpn::H2;
         self
     }
-    */
 
     // Don't public expose that `Connected` is `Clone`, unsure if we want to
     // keep that contract...
     pub(super) fn clone(&self) -> Connected {
         Connected {
+            alpn: self.alpn.clone(),
             is_proxied: self.is_proxied,
             extra: self.extra.clone(),
         }
diff --git a/rustc_deps/vendor/hyper/src/client/mod.rs b/rustc_deps/vendor/hyper/src/client/mod.rs
index 2660089..b25486f 100644
--- a/rustc_deps/vendor/hyper/src/client/mod.rs
+++ b/rustc_deps/vendor/hyper/src/client/mod.rs
@@ -86,12 +86,12 @@
 use futures::future::{self, Either, Executor};
 use futures::sync::oneshot;
 use http::{Method, Request, Response, Uri, Version};
-use http::header::{Entry, HeaderValue, HOST};
+use http::header::{HeaderValue, HOST};
 use http::uri::Scheme;
 
 use body::{Body, Payload};
 use common::{Exec, lazy as hyper_lazy, Lazy};
-use self::connect::{Connect, Connected, Destination};
+use self::connect::{Alpn, Connect, Connected, Destination};
 use self::pool::{Key as PoolKey, Pool, Poolable, Pooled, Reservation};
 
 #[cfg(feature = "runtime")] pub use self::connect::HttpConnector;
@@ -192,23 +192,19 @@
 
     /// Send a constructed Request using this Client.
     pub fn request(&self, mut req: Request<B>) -> ResponseFuture {
-        let is_http_11 = self.ver == Ver::Http1 && match req.version() {
-            Version::HTTP_11 => true,
-            Version::HTTP_10 => false,
-            other => {
+        let is_http_connect = req.method() == &Method::CONNECT;
+        match req.version() {
+            Version::HTTP_11 => (),
+            Version::HTTP_10 => if is_http_connect {
+                debug!("CONNECT is not allowed for HTTP/1.0");
+                return ResponseFuture::new(Box::new(future::err(::Error::new_user_unsupported_request_method())));
+            },
+            other => if self.ver != Ver::Http2 {
                 error!("Request has unsupported version \"{:?}\"", other);
                 return ResponseFuture::new(Box::new(future::err(::Error::new_user_unsupported_version())));
             }
         };
 
-        let is_http_connect = req.method() == &Method::CONNECT;
-
-        if !is_http_11 && is_http_connect {
-            debug!("client does not support CONNECT requests for {:?}", req.version());
-            return ResponseFuture::new(Box::new(future::err(::Error::new_user_unsupported_request_method())));
-        }
-
-
         let uri = req.uri().clone();
         let domain = match (uri.scheme_part(), uri.authority_part()) {
             (Some(scheme), Some(auth)) => {
@@ -233,21 +229,7 @@
             }
         };
 
-        if self.set_host && self.ver == Ver::Http1 {
-            if let Entry::Vacant(entry) = req.headers_mut().entry(HOST).expect("HOST is always valid header name") {
-                let hostname = uri.host().expect("authority implies host");
-                let host = if let Some(port) = uri.port() {
-                    let s = format!("{}:{}", hostname, port);
-                    HeaderValue::from_str(&s)
-                } else {
-                    HeaderValue::from_str(hostname)
-                }.expect("uri host is valid header value");
-                entry.insert(host);
-            }
-        }
-
-
-        let pool_key = (Arc::new(domain.to_string()), self.ver);
+        let pool_key = Arc::new(domain.to_string());
         ResponseFuture::new(Box::new(self.retryably_send_request(req, pool_key)))
     }
 
@@ -283,11 +265,28 @@
     fn send_request(&self, mut req: Request<B>, pool_key: PoolKey) -> impl Future<Item=Response<Body>, Error=ClientError<B>> {
         let conn = self.connection_for(req.uri().clone(), pool_key);
 
-        let ver = self.ver;
+        let set_host = self.set_host;
         let executor = self.executor.clone();
         conn.and_then(move |mut pooled| {
-            if ver == Ver::Http1 {
-                // CONNECT always sends origin-form, so check it first...
+            if pooled.is_http1() {
+                if set_host {
+                    let uri = req.uri().clone();
+                    req
+                        .headers_mut()
+                        .entry(HOST)
+                        .expect("HOST is always valid header name")
+                        .or_insert_with(|| {
+                            let hostname = uri.host().expect("authority implies host");
+                            if let Some(port) = uri.port() {
+                                let s = format!("{}:{}", hostname, port);
+                                HeaderValue::from_str(&s)
+                            } else {
+                                HeaderValue::from_str(hostname)
+                            }.expect("uri host is valid header value")
+                        });
+                }
+
+                // CONNECT always sends authority-form, so check it first...
                 if req.method() == &Method::CONNECT {
                     authority_form(req.uri_mut());
                 } else if pooled.conn_info.is_proxied {
@@ -295,11 +294,9 @@
                 } else {
                     origin_form(req.uri_mut());
                 };
-            } else {
-                debug_assert!(
-                    req.method() != &Method::CONNECT,
-                    "Client should have returned Error for HTTP2 CONNECT"
-                );
+            } else if req.method() == &Method::CONNECT {
+                debug!("client does not support CONNECT requests over HTTP2");
+                return Either::A(future::err(ClientError::Normal(::Error::new_user_unsupported_request_method())));
             }
 
             let fut = pooled.send_request_retryable(req)
@@ -322,10 +319,10 @@
             // To counteract this, we must check if our senders 'want' channel
             // has been closed after having tried to send. If so, error out...
             if pooled.is_closed() {
-                return Either::A(fut);
+                return Either::B(Either::A(fut));
             }
 
-            Either::B(fut
+            Either::B(Either::B(fut
                 .and_then(move |mut res| {
                     // If pooled is HTTP/2, we can toss this reference immediately.
                     //
@@ -337,7 +334,7 @@
                     // for a new request to start.
                     //
                     // It won't be ready if there is a body to stream.
-                    if ver == Ver::Http2 || !pooled.is_pool_enabled() || pooled.is_ready() {
+                    if pooled.is_http2() || !pooled.is_pool_enabled() || pooled.is_ready() {
                         drop(pooled);
                     } else if !res.body().is_end_stream() {
                         let (delayed_tx, delayed_rx) = oneshot::channel();
@@ -370,7 +367,7 @@
                         }
                     }
                     Ok(res)
-                }))
+                })))
         })
     }
 
@@ -463,8 +460,9 @@
         let pool = self.pool.clone();
         let h1_writev = self.h1_writev;
         let h1_title_case_headers = self.h1_title_case_headers;
+        let ver = self.ver;
+        let is_ver_h2 = self.ver == Ver::Http2;
         let connector = self.connector.clone();
-        let ver = pool_key.1;
         let dst = Destination {
             uri,
         };
@@ -474,7 +472,7 @@
             // If the pool_key is for HTTP/2, and there is already a
             // connection being estabalished, then this can't take a
             // second lock. The "connect_to" future is Canceled.
-            let connecting = match pool.connecting(&pool_key) {
+            let connecting = match pool.connecting(&pool_key, ver) {
                 Some(lock) => lock,
                 None => {
                     let canceled = ::Error::new_canceled(Some("HTTP/2 connection in progress"));
@@ -484,11 +482,31 @@
             Either::A(connector.connect(dst)
                 .map_err(::Error::new_connect)
                 .and_then(move |(io, connected)| {
-                    conn::Builder::new()
+                    // If ALPN is h2 and we aren't http2_only already,
+                    // then we need to convert our pool checkout into
+                    // a single HTTP2 one.
+                    let connecting = if connected.alpn == Alpn::H2 && !is_ver_h2 {
+                        match connecting.alpn_h2(&pool) {
+                            Some(lock) => {
+                                trace!("ALPN negotiated h2, updating pool");
+                                lock
+                            },
+                            None => {
+                                // Another connection has already upgraded,
+                                // the pool checkout should finish up for us.
+                                let canceled = ::Error::new_canceled(Some("ALPN upgraded to HTTP/2"));
+                                return Either::B(future::err(canceled));
+                            }
+                        }
+                    } else {
+                        connecting
+                    };
+                    let is_h2 = is_ver_h2 || connected.alpn == Alpn::H2;
+                    Either::A(conn::Builder::new()
                         .exec(executor.clone())
                         .h1_writev(h1_writev)
                         .h1_title_case_headers(h1_title_case_headers)
-                        .http2_only(pool_key.1 == Ver::Http2)
+                        .http2_only(is_h2)
                         .handshake(io)
                         .and_then(move |(tx, conn)| {
                             let bg = executor.execute(conn.map_err(|e| {
@@ -509,12 +527,13 @@
                         .map(move |tx| {
                             pool.pooled(connecting, PoolClient {
                                 conn_info: connected,
-                                tx: match ver {
-                                    Ver::Http1 => PoolTx::Http1(tx),
-                                    Ver::Http2 => PoolTx::Http2(tx.into_http2()),
+                                tx: if is_h2 {
+                                    PoolTx::Http2(tx.into_http2())
+                                } else {
+                                    PoolTx::Http1(tx)
                                 },
                             })
-                        })
+                        }))
                 }))
         })
     }
@@ -591,6 +610,17 @@
         }
     }
 
+    fn is_http1(&self) -> bool {
+        !self.is_http2()
+    }
+
+    fn is_http2(&self) -> bool {
+        match self.tx {
+            PoolTx::Http1(_) => false,
+            PoolTx::Http2(_) => true,
+        }
+    }
+
     fn is_ready(&self) -> bool {
         match self.tx {
             PoolTx::Http1(ref tx) => tx.is_ready(),
@@ -650,6 +680,10 @@
             }
         }
     }
+
+    fn can_share(&self) -> bool {
+        self.is_http2()
+    }
 }
 
 // FIXME: allow() required due to `impl Trait` leaking types to this lint
diff --git a/rustc_deps/vendor/hyper/src/client/pool.rs b/rustc_deps/vendor/hyper/src/client/pool.rs
index 146ef77..9fb615b 100644
--- a/rustc_deps/vendor/hyper/src/client/pool.rs
+++ b/rustc_deps/vendor/hyper/src/client/pool.rs
@@ -30,6 +30,7 @@
     ///
     /// Allows for HTTP/2 to return a shared reservation.
     fn reserve(self) -> Reservation<Self>;
+    fn can_share(&self) -> bool;
 }
 
 /// When checking out a pooled connection, it might be that the connection
@@ -50,7 +51,7 @@
 }
 
 /// Simple type alias in case the key type needs to be adjusted.
-pub(super) type Key = (Arc<String>, Ver);
+pub(super) type Key = Arc<String>;
 
 struct PoolInner<T> {
     // A flag that a connection is being estabilished, and the connection
@@ -151,8 +152,8 @@
 
     /// Ensure that there is only ever 1 connecting task for HTTP/2
     /// connections. This does nothing for HTTP/1.
-    pub(super) fn connecting(&self, key: &Key) -> Option<Connecting<T>> {
-        if key.1 == Ver::Http2 {
+    pub(super) fn connecting(&self, key: &Key, ver: Ver) -> Option<Connecting<T>> {
+        if ver == Ver::Http2 {
             if let Some(ref enabled) = self.inner {
                 let mut inner = enabled.lock().unwrap();
                 return if inner.connecting.insert(key.clone()) {
@@ -162,7 +163,7 @@
                     };
                     Some(connecting)
                 } else {
-                    trace!("HTTP/2 connecting already in progress for {:?}", key.0);
+                    trace!("HTTP/2 connecting already in progress for {:?}", key);
                     None
                 };
             }
@@ -190,7 +191,7 @@
     #[cfg(feature = "runtime")]
     #[cfg(test)]
     pub(super) fn h1_key(&self, s: &str) -> Key {
-        (Arc::new(s.to_string()), Ver::Http1)
+        Arc::new(s.to_string())
     }
 
     #[cfg(feature = "runtime")]
@@ -243,11 +244,6 @@
         let (value, pool_ref) = if let Some(ref enabled) = self.inner {
             match value.reserve() {
                 Reservation::Shared(to_insert, to_return) => {
-                    debug_assert_eq!(
-                        connecting.key.1,
-                        Ver::Http2,
-                        "shared reservation without Http2"
-                    );
                     let mut inner = enabled.lock().unwrap();
                     inner.put(connecting.key.clone(), to_insert, enabled);
                     // Do this here instead of Drop for Connecting because we
@@ -294,7 +290,7 @@
         // unique or shared. So, the hack is to just assume Ver::Http2 means
         // shared... :(
         let mut pool_ref = WeakOpt::none();
-        if key.1 == Ver::Http1 {
+        if !value.can_share() {
             if let Some(ref enabled) = self.inner {
                 pool_ref = WeakOpt::downgrade(enabled);
             }
@@ -377,7 +373,7 @@
 
 impl<T: Poolable> PoolInner<T> {
     fn put(&mut self, key: Key, value: T, __pool_ref: &Arc<Mutex<PoolInner<T>>>) {
-        if key.1 == Ver::Http2 && self.idle.contains_key(&key) {
+        if value.can_share() && self.idle.contains_key(&key) {
             trace!("put; existing idle HTTP/2 connection for {:?}", key);
             return;
         }
@@ -601,7 +597,7 @@
                 if let Ok(mut inner) = pool.lock() {
                     inner.put(self.key.clone(), value, &pool);
                 }
-            } else if self.key.1 == Ver::Http1 {
+            } else if !value.can_share() {
                 trace!("pool dropped, dropping pooled ({:?})", self.key);
             }
             // Ver::Http2 is already in the Pool (or dead), so we wouldn't
@@ -705,16 +701,22 @@
     pool: WeakOpt<Mutex<PoolInner<T>>>,
 }
 
+impl<T: Poolable> Connecting<T> {
+    pub(super) fn alpn_h2(self, pool: &Pool<T>) -> Option<Self> {
+        debug_assert!(
+            self.pool.0.is_none(),
+            "Connecting::alpn_h2 but already Http2"
+        );
+
+        pool.connecting(&self.key, Ver::Http2)
+    }
+}
+
 impl<T: Poolable> Drop for Connecting<T> {
     fn drop(&mut self) {
         if let Some(pool) = self.pool.upgrade() {
             // No need to panic on drop, that could abort!
             if let Ok(mut inner) = pool.lock() {
-                debug_assert_eq!(
-                    self.key.1,
-                    Ver::Http2,
-                    "Connecting constructed without Http2"
-                );
                 inner.connected(&self.key);
             }
         }
@@ -804,7 +806,7 @@
     use futures::{Async, Future};
     use futures::future;
     use common::Exec;
-    use super::{Connecting, Key, Poolable, Pool, Reservation, Ver, WeakOpt};
+    use super::{Connecting, Key, Poolable, Pool, Reservation, WeakOpt};
 
     /// Test unique reservations.
     #[derive(Debug, PartialEq, Eq)]
@@ -818,6 +820,10 @@
         fn reserve(self) -> Reservation<Self> {
             Reservation::Unique(self)
         }
+
+        fn can_share(&self) -> bool {
+            false
+        }
     }
 
     fn c<T: Poolable>(key: Key) -> Connecting<T> {
@@ -845,7 +851,7 @@
     #[test]
     fn test_pool_checkout_smoke() {
         let pool = pool_no_timer();
-        let key = (Arc::new("foo".to_string()), Ver::Http1);
+        let key = Arc::new("foo".to_string());
         let pooled = pool.pooled(c(key.clone()), Uniq(41));
 
         drop(pooled);
@@ -860,7 +866,7 @@
     fn test_pool_checkout_returns_none_if_expired() {
         future::lazy(|| {
             let pool = pool_no_timer();
-            let key = (Arc::new("foo".to_string()), Ver::Http1);
+            let key = Arc::new("foo".to_string());
             let pooled = pool.pooled(c(key.clone()), Uniq(41));
             drop(pooled);
             ::std::thread::sleep(pool.locked().timeout.unwrap());
@@ -873,7 +879,7 @@
     fn test_pool_checkout_removes_expired() {
         future::lazy(|| {
             let pool = pool_no_timer();
-            let key = (Arc::new("foo".to_string()), Ver::Http1);
+            let key = Arc::new("foo".to_string());
 
             pool.pooled(c(key.clone()), Uniq(41));
             pool.pooled(c(key.clone()), Uniq(5));
@@ -894,7 +900,7 @@
     fn test_pool_max_idle_per_host() {
         future::lazy(|| {
             let pool = pool_max_idle_no_timer(2);
-            let key = (Arc::new("foo".to_string()), Ver::Http1);
+            let key = Arc::new("foo".to_string());
 
             pool.pooled(c(key.clone()), Uniq(41));
             pool.pooled(c(key.clone()), Uniq(5));
@@ -920,7 +926,7 @@
             &Exec::Default,
         );
 
-        let key = (Arc::new("foo".to_string()), Ver::Http1);
+        let key = Arc::new("foo".to_string());
 
         // Since pool.pooled() will be calling spawn on drop, need to be sure
         // those drops are called while `rt` is the current executor. To do so,
@@ -945,7 +951,7 @@
     #[test]
     fn test_pool_checkout_task_unparked() {
         let pool = pool_no_timer();
-        let key = (Arc::new("foo".to_string()), Ver::Http1);
+        let key = Arc::new("foo".to_string());
         let pooled = pool.pooled(c(key.clone()), Uniq(41));
 
         let checkout = pool.checkout(key).join(future::lazy(move || {
@@ -964,7 +970,7 @@
     fn test_pool_checkout_drop_cleans_up_waiters() {
         future::lazy(|| {
             let pool = pool_no_timer::<Uniq<i32>>();
-            let key = (Arc::new("localhost:12345".to_string()), Ver::Http1);
+            let key = Arc::new("localhost:12345".to_string());
 
             let mut checkout1 = pool.checkout(key.clone());
             let mut checkout2 = pool.checkout(key.clone());
@@ -1000,12 +1006,16 @@
         fn reserve(self) -> Reservation<Self> {
             Reservation::Unique(self)
         }
+
+        fn can_share(&self) -> bool {
+            false
+        }
     }
 
     #[test]
     fn pooled_drop_if_closed_doesnt_reinsert() {
         let pool = pool_no_timer();
-        let key = (Arc::new("localhost:12345".to_string()), Ver::Http1);
+        let key = Arc::new("localhost:12345".to_string());
         pool.pooled(c(key.clone()), CanClose {
             val: 57,
             closed: true,
diff --git a/rustc_deps/vendor/hyper/src/client/tests.rs b/rustc_deps/vendor/hyper/src/client/tests.rs
index 7df6a7e..17a4194 100644
--- a/rustc_deps/vendor/hyper/src/client/tests.rs
+++ b/rustc_deps/vendor/hyper/src/client/tests.rs
@@ -207,4 +207,3 @@
     }
 }
 
-
diff --git a/rustc_deps/vendor/hyper/src/common/drain.rs b/rustc_deps/vendor/hyper/src/common/drain.rs
index 4f7a539..d2260c8 100644
--- a/rustc_deps/vendor/hyper/src/common/drain.rs
+++ b/rustc_deps/vendor/hyper/src/common/drain.rs
@@ -114,3 +114,121 @@
     }
 }
 
+#[cfg(test)]
+mod tests {
+    use futures::{future, Async, Future, Poll};
+    use super::*;
+
+    struct TestMe {
+        draining: bool,
+        finished: bool,
+        poll_cnt: usize,
+    }
+
+    impl Future for TestMe {
+        type Item = ();
+        type Error = ();
+
+        fn poll(&mut self) -> Poll<Self::Item, Self::Error> {
+            self.poll_cnt += 1;
+            if self.finished {
+                Ok(Async::Ready(()))
+            } else {
+                Ok(Async::NotReady)
+            }
+        }
+    }
+
+    #[test]
+    fn watch() {
+        future::lazy(|| {
+            let (tx, rx) = channel();
+            let fut = TestMe {
+                draining: false,
+                finished: false,
+                poll_cnt: 0,
+            };
+
+            let mut watch = rx.watch(fut, |fut| {
+                fut.draining = true;
+            });
+
+            assert_eq!(watch.future.poll_cnt, 0);
+
+            // First poll should poll the inner future
+            assert!(watch.poll().unwrap().is_not_ready());
+            assert_eq!(watch.future.poll_cnt, 1);
+
+            // Second poll should poll the inner future again
+            assert!(watch.poll().unwrap().is_not_ready());
+            assert_eq!(watch.future.poll_cnt, 2);
+
+            let mut draining = tx.drain();
+            // Drain signaled, but needs another poll to be noticed.
+            assert!(!watch.future.draining);
+            assert_eq!(watch.future.poll_cnt, 2);
+
+            // Now, poll after drain has been signaled.
+            assert!(watch.poll().unwrap().is_not_ready());
+            assert_eq!(watch.future.poll_cnt, 3);
+            assert!(watch.future.draining);
+
+            // Draining is not ready until watcher completes
+            assert!(draining.poll().unwrap().is_not_ready());
+
+            // Finishing up the watch future
+            watch.future.finished = true;
+            assert!(watch.poll().unwrap().is_ready());
+            assert_eq!(watch.future.poll_cnt, 4);
+            drop(watch);
+
+            assert!(draining.poll().unwrap().is_ready());
+
+            Ok::<_, ()>(())
+        }).wait().unwrap();
+    }
+
+    #[test]
+    fn watch_clones() {
+        future::lazy(|| {
+            let (tx, rx) = channel();
+
+            let fut1 = TestMe {
+                draining: false,
+                finished: false,
+                poll_cnt: 0,
+            };
+            let fut2 = TestMe {
+                draining: false,
+                finished: false,
+                poll_cnt: 0,
+            };
+
+            let watch1 = rx.clone().watch(fut1, |fut| {
+                fut.draining = true;
+            });
+            let watch2 = rx.watch(fut2, |fut| {
+                fut.draining = true;
+            });
+
+            let mut draining = tx.drain();
+
+            // Still 2 outstanding watchers
+            assert!(draining.poll().unwrap().is_not_ready());
+
+            // drop 1 for whatever reason
+            drop(watch1);
+
+            // Still not ready, 1 other watcher still pending
+            assert!(draining.poll().unwrap().is_not_ready());
+
+            drop(watch2);
+
+            // Now all watchers are gone, draining is complete
+            assert!(draining.poll().unwrap().is_ready());
+
+            Ok::<_, ()>(())
+        }).wait().unwrap();
+    }
+}
+
diff --git a/rustc_deps/vendor/hyper/src/lib.rs b/rustc_deps/vendor/hyper/src/lib.rs
index 5fe8e0f..d8240ea 100644
--- a/rustc_deps/vendor/hyper/src/lib.rs
+++ b/rustc_deps/vendor/hyper/src/lib.rs
@@ -1,4 +1,4 @@
-#![doc(html_root_url = "https://docs.rs/hyper/0.12.13")]
+#![doc(html_root_url = "https://docs.rs/hyper/0.12.14")]
 #![deny(missing_docs)]
 #![deny(missing_debug_implementations)]
 #![cfg_attr(test, deny(warnings))]
diff --git a/rustc_deps/vendor/hyper/src/mock.rs b/rustc_deps/vendor/hyper/src/mock.rs
index 010b6cf..b27bf65 100644
--- a/rustc_deps/vendor/hyper/src/mock.rs
+++ b/rustc_deps/vendor/hyper/src/mock.rs
@@ -358,11 +358,12 @@
 impl Write for Duplex {
     fn write(&mut self, buf: &[u8]) -> io::Result<usize> {
         let mut inner = self.inner.lock().unwrap();
+        let ret = inner.write.write(buf);
         if let Some(task) = inner.handle_read_task.take() {
             trace!("waking DuplexHandle read");
             task.notify();
         }
-        inner.write.write(buf)
+        ret
     }
 
     fn flush(&mut self) -> io::Result<()> {
@@ -404,8 +405,7 @@
             inner.handle_read_task = Some(task::current());
             return Ok(Async::NotReady);
         }
-        inner.write.inner.vec.truncate(0);
-        Ok(Async::Ready(inner.write.inner.len()))
+        inner.write.read(buf).map(Async::Ready)
     }
 
     pub fn write(&self, bytes: &[u8]) -> Poll<usize, io::Error> {
@@ -459,13 +459,20 @@
     where
         F: Future + Send + 'static,
     {
+        self.mock_opts(key, Connected::new(), fut)
+    }
+
+    pub fn mock_opts<F>(&mut self, key: &str, connected: Connected, fut: F) -> DuplexHandle
+    where
+        F: Future + Send + 'static,
+    {
         let key = key.to_owned();
 
         let (duplex, handle) = Duplex::channel();
 
         let fut = Box::new(fut.then(move |_| {
             trace!("MockConnector mocked fut ready");
-            Ok((duplex, Connected::new()))
+            Ok((duplex, connected))
         }));
         self.mocks.lock().unwrap().entry(key)
             .or_insert(Vec::new())
diff --git a/rustc_deps/vendor/hyper/src/proto/h1/role.rs b/rustc_deps/vendor/hyper/src/proto/h1/role.rs
index 83384b8..de1299d 100644
--- a/rustc_deps/vendor/hyper/src/proto/h1/role.rs
+++ b/rustc_deps/vendor/hyper/src/proto/h1/role.rs
@@ -104,7 +104,7 @@
                         Version::HTTP_10
                     };
 
-                    record_header_indices(bytes, &req.headers, &mut headers_indices);
+                    record_header_indices(bytes, &req.headers, &mut headers_indices)?;
                     headers_len = req.headers.len();
                     //(len, subject, version, headers_len)
                 }
@@ -590,7 +590,7 @@
                         } else {
                             Version::HTTP_10
                         };
-                        record_header_indices(bytes, &res.headers, &mut headers_indices);
+                        record_header_indices(bytes, &res.headers, &mut headers_indices)?;
                         let headers_len = res.headers.len();
                         (len, status, version, headers_len)
                     },
@@ -918,7 +918,11 @@
     value: (usize, usize),
 }
 
-fn record_header_indices(bytes: &[u8], headers: &[httparse::Header], indices: &mut [HeaderIndices]) {
+fn record_header_indices(
+    bytes: &[u8],
+    headers: &[httparse::Header],
+    indices: &mut [HeaderIndices]
+) -> Result<(), ::error::Parse> {
     let bytes_ptr = bytes.as_ptr() as usize;
 
     // FIXME: This should be a single plain `for` loop.
@@ -945,6 +949,10 @@
         cfg(all(target_arch = "arm", target_feature = "v7", target_feature = "neon"))
         for (header, indices) in (headers.iter().zip(indices.iter_mut())) {
             {
+                if header.name.len() >= (1 << 16) {
+                    debug!("header name larger than 64kb: {:?}", header.name);
+                    return Err(::error::Parse::TooLarge);
+                }
                 let name_start = header.name.as_ptr() as usize - bytes_ptr;
                 let name_end = name_start + header.name.len();
                 indices.name = (name_start, name_end);
@@ -956,6 +964,8 @@
             }
         }
     }
+
+    Ok(())
 }
 
 // Write header names as title case. The header name is assumed to be ASCII,
diff --git a/rustc_deps/vendor/indexmap/.cargo-checksum.json b/rustc_deps/vendor/indexmap/.cargo-checksum.json
index 587eab3..b984a7e 100644
--- a/rustc_deps/vendor/indexmap/.cargo-checksum.json
+++ b/rustc_deps/vendor/indexmap/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"016ad331f6c275982ef51f3099c5d3ff5ab25bd3c497a966a1a40bb2d49e92eb","Cargo.toml":"d9442b75bd8fb879d10d1da75350d1566b3053eb8803065bf4e00cd843f2ff6e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"ecc269ef87fd38a1d98e30bfac9ba964a9dbd9315c3770fed98d4d7cb5882055","README.rst":"3ff031666d039af73499c7de94a5e1f990f89156c698d234da2e379723a2143f","benches/bench.rs":"ed5108d81b3cb3806bfc652e745ec0ec353766bdb9537d834606c6cb233bb27e","benches/faststring.rs":"724c5dc83e333c00d28393e346f3feb6a93c64d5c3d6d5a00f680b22b8259c31","src/equivalent.rs":"4d07c0ae8c8ff405fdbb45e6c891158d3fdcfedd47001e4cec090c79b5c56564","src/lib.rs":"483aa0587bd21942988ab094430179b65f80678734c4ac7cf734d10541a75b0e","src/macros.rs":"472c9ec707495e6de60b4e67c1b25f2201bb962fa6672fae32addde2eb4df376","src/map.rs":"83baecdf14c3f93d0fd3b4a1ec7996a11247450b8a713a4605c1484463c50204","src/mutable_keys.rs":"2bf26fb36ad0ccd3c40b0f2cc4e5b8429e6627207f50fca07110a5011880a9dc","src/serde.rs":"16eae1b7fb2d8d0a030e221d180355b967aa6d48fe431a06bec75a182cb97f69","src/set.rs":"b597592bca71b128ba8b06b75d772d39cef9490c0be3dac55d38e090bbbb1e73","src/util.rs":"331f80b48387878caa01ab9cfd43927ea0c15129c6beb755d6b40abc6ada900f","tests/equivalent_trait.rs":"f48ef255e4bc6bc85ed11fd9bee4cc53759efb182e448d315f8d12af1f80b05d","tests/quick.rs":"865be7928ec19dbf58c896bd2a3fd848a756328a429934a9aad5a364298228f0","tests/serde.rs":"48f2a2184c819ffaa5c234ccea9c3bea1c58edf8ad9ada1476eedc179438d07d","tests/tests.rs":"c916ae9c5d08c042b7c3a0447ef3db5a1b9d37b3122fddace4235296a623725b"},"package":"7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"}
\ No newline at end of file
+{"files":{"Cargo.toml":"d9442b75bd8fb879d10d1da75350d1566b3053eb8803065bf4e00cd843f2ff6e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"ecc269ef87fd38a1d98e30bfac9ba964a9dbd9315c3770fed98d4d7cb5882055","README.rst":"3ff031666d039af73499c7de94a5e1f990f89156c698d234da2e379723a2143f","benches/bench.rs":"ed5108d81b3cb3806bfc652e745ec0ec353766bdb9537d834606c6cb233bb27e","benches/faststring.rs":"724c5dc83e333c00d28393e346f3feb6a93c64d5c3d6d5a00f680b22b8259c31","src/equivalent.rs":"4d07c0ae8c8ff405fdbb45e6c891158d3fdcfedd47001e4cec090c79b5c56564","src/lib.rs":"483aa0587bd21942988ab094430179b65f80678734c4ac7cf734d10541a75b0e","src/macros.rs":"472c9ec707495e6de60b4e67c1b25f2201bb962fa6672fae32addde2eb4df376","src/map.rs":"83baecdf14c3f93d0fd3b4a1ec7996a11247450b8a713a4605c1484463c50204","src/mutable_keys.rs":"2bf26fb36ad0ccd3c40b0f2cc4e5b8429e6627207f50fca07110a5011880a9dc","src/serde.rs":"16eae1b7fb2d8d0a030e221d180355b967aa6d48fe431a06bec75a182cb97f69","src/set.rs":"b597592bca71b128ba8b06b75d772d39cef9490c0be3dac55d38e090bbbb1e73","src/util.rs":"331f80b48387878caa01ab9cfd43927ea0c15129c6beb755d6b40abc6ada900f","tests/equivalent_trait.rs":"f48ef255e4bc6bc85ed11fd9bee4cc53759efb182e448d315f8d12af1f80b05d","tests/quick.rs":"865be7928ec19dbf58c896bd2a3fd848a756328a429934a9aad5a364298228f0","tests/serde.rs":"48f2a2184c819ffaa5c234ccea9c3bea1c58edf8ad9ada1476eedc179438d07d","tests/tests.rs":"c916ae9c5d08c042b7c3a0447ef3db5a1b9d37b3122fddace4235296a623725b"},"package":"7e81a7c05f79578dbc15793d8b619db9ba32b4577003ef3af1a91c416798c58d"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/indexmap/.travis.yml b/rustc_deps/vendor/indexmap/.travis.yml
deleted file mode 100644
index c6ae7ef..0000000
--- a/rustc_deps/vendor/indexmap/.travis.yml
+++ /dev/null
@@ -1,27 +0,0 @@
-language: rust
-sudo: false
-matrix:
-  include:
-    - rust: 1.18.0
-      before_script:
-        # lazy_static 1.1 requires Rust 1.21+, so downgrade it.
-        # (we only use it in benchmarks anyway...)
-        - cargo generate-lockfile
-        - cargo update -p lazy_static --precise 1.0.2
-    - rust: stable
-      env:
-       - FEATURES='serde-1'
-    - rust: beta
-    - rust: nightly
-    - rust: nightly
-      env:
-       - FEATURES='test_low_transition_point'
-branches:
-  only:
-    - master
-script:
-  - |
-      cargo build --verbose --features "$FEATURES" &&
-      cargo test --verbose --features "$FEATURES" &&
-      cargo test --release --verbose --features "$FEATURES" &&
-      cargo doc --verbose --features "$FEATURES"
diff --git a/rustc_deps/vendor/iovec/.cargo-checksum.json b/rustc_deps/vendor/iovec/.cargo-checksum.json
index 6832dc9..a1319cd 100644
--- a/rustc_deps/vendor/iovec/.cargo-checksum.json
+++ b/rustc_deps/vendor/iovec/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"9134f9b0ca77f5646a3d0871a95c6aa4a9c778e37326a3dd87686fcb866c4636","CHANGELOG.md":"6f1bd582e0ed8f66e723cca4deabfc23fed4455e7469eaa0b51633ef88a14af6","Cargo.lock":"eee753ec34168ab6394513e52d21a134c5de335e6fb44d84e9caf31b3a8b836c","Cargo.toml":"ac8f3603c5e24b4326aea402d8199c21d0c74602ef2c99a6befe210bbb63ed1a","LICENSE-APACHE":"01b5abb4a95cc87b220efbd67a1e99c74bef3d744806dd44b4d57e81db814962","LICENSE-MIT":"d4784f55731ba75b77ad73a52808914b26b2f93b69dd4c03249528a75afbd946","README.md":"247302d4c1dc621f150bc06fc0d37f7ad5a4f2dcf1aafe25f8dfe8eb4fe35921","appveyor.yml":"8c309c2779904317005c7f7404470daf2aad344571168a37da214e37833be2a9","src/lib.rs":"5f2e0b694ef4a24f83dbb9f73b7572d4b59478d9bb8cd724bbd982cd3b4e00df","src/sys/mod.rs":"b19af7b93fd8d7a6f46234e0bb93ddbb12b175e57eff9cb0c0c195ea89ec56b4","src/sys/unix.rs":"8265b65eee3672c96460f4aae8b7b61179e17c8ca80646be3994bc05951228ae","src/sys/unknown.rs":"5057c208dcb309ec1b46a76b922948358ceb727958fb8bde4908948a3890057d","src/sys/windows.rs":"90f2a0b93d2b322fb991daacb39e5ac7cef6dd90dac2de7660698c6097ec0c88","src/unix.rs":"76e76333e31dd53d1ea6704a880f4188014af09fe8be3cecd5239003b2a1fe7c","src/windows.rs":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"package":"dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"6f1bd582e0ed8f66e723cca4deabfc23fed4455e7469eaa0b51633ef88a14af6","Cargo.toml":"ac8f3603c5e24b4326aea402d8199c21d0c74602ef2c99a6befe210bbb63ed1a","LICENSE-APACHE":"01b5abb4a95cc87b220efbd67a1e99c74bef3d744806dd44b4d57e81db814962","LICENSE-MIT":"d4784f55731ba75b77ad73a52808914b26b2f93b69dd4c03249528a75afbd946","README.md":"247302d4c1dc621f150bc06fc0d37f7ad5a4f2dcf1aafe25f8dfe8eb4fe35921","appveyor.yml":"8c309c2779904317005c7f7404470daf2aad344571168a37da214e37833be2a9","src/lib.rs":"5f2e0b694ef4a24f83dbb9f73b7572d4b59478d9bb8cd724bbd982cd3b4e00df","src/sys/mod.rs":"b19af7b93fd8d7a6f46234e0bb93ddbb12b175e57eff9cb0c0c195ea89ec56b4","src/sys/unix.rs":"8265b65eee3672c96460f4aae8b7b61179e17c8ca80646be3994bc05951228ae","src/sys/unknown.rs":"5057c208dcb309ec1b46a76b922948358ceb727958fb8bde4908948a3890057d","src/sys/windows.rs":"90f2a0b93d2b322fb991daacb39e5ac7cef6dd90dac2de7660698c6097ec0c88","src/unix.rs":"76e76333e31dd53d1ea6704a880f4188014af09fe8be3cecd5239003b2a1fe7c","src/windows.rs":"e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"},"package":"dbe6e417e7d0975db6512b90796e8ce223145ac4e33c377e4a42882a0e88bb08"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/iovec/.travis.yml b/rustc_deps/vendor/iovec/.travis.yml
deleted file mode 100644
index f76806b..0000000
--- a/rustc_deps/vendor/iovec/.travis.yml
+++ /dev/null
@@ -1,25 +0,0 @@
----
-language: rust
-sudo: false
-
-matrix:
-  include:
-    # Oldest supported Rust (this should track Mio)
-    - rust: 1.9.0
-    - rust: stable
-    # OS X support
-    - rust: stable
-      os: osx
-    # WebAssembly support.
-    - rust: beta
-      script:
-        - rustup target add wasm32-unknown-unknown
-        - cargo build --target=wasm32-unknown-unknown
-
-script:
-  - cargo build
-  - cargo test
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/iovec/Cargo.lock b/rustc_deps/vendor/iovec/Cargo.lock
deleted file mode 100644
index 2053367..0000000
--- a/rustc_deps/vendor/iovec/Cargo.lock
+++ /dev/null
@@ -1,21 +0,0 @@
-[[package]]
-name = "iovec"
-version = "0.1.2"
-dependencies = [
- "libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)",
- "winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "libc"
-version = "0.2.43"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "winapi"
-version = "0.2.8"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[metadata]
-"checksum libc 0.2.43 (registry+https://github.com/rust-lang/crates.io-index)" = "76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d"
-"checksum winapi 0.2.8 (registry+https://github.com/rust-lang/crates.io-index)" = "167dc9d6949a9b857f3451275e911c3f44255842c1f7a76f33c55103a909087a"
diff --git a/rustc_deps/vendor/itertools/.cargo-checksum.json b/rustc_deps/vendor/itertools/.cargo-checksum.json
index 79f9fef..4bd2b79 100644
--- a/rustc_deps/vendor/itertools/.cargo-checksum.json
+++ b/rustc_deps/vendor/itertools/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"4e4e7bedfa8d4f8da4e5f9664c160fb0e82bd9b849e8c0f19cd698ec805b431f","Cargo.toml":"aeaa15ad23357fa2c222b01f8cbb4f6efc61dc1f0e8687beee211d0eeb3b1d1e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7576269ea71f767b99297934c0b2367532690f8c4badc695edf8e04ab6a1e545","Makefile":"13f1c5b88a7b946b5813f7231df2933b6b19b223e9e2d3fa63ad681192f984b5","README.rst":"711bd98258ffea2d19fe96e4c766aca622fbf395bc5a7c8f6cad52ac65121464","benches/bench1.rs":"695e4b00addf2e8e44a09d85a588cb333c97109829e59739bdab01e7342d47b5","benches/extra/mod.rs":"4c5b03e74fc5b02383500c9da9fd6550262706ee569d70d085700f6d0b5749ba","benches/extra/zipslices.rs":"108dd488de366b2d83fb6bcc603ecbf9a017e165ac19d03440074fa244af3fb2","benches/tree_fold1.rs":"84cddbabb1a681f3196430a8e27b060103366143a3ee4c42c3b0628fc00a7543","benches/tuple_combinations.rs":"8c14e9341d92e5cfd5f9a067d11088b37b003e82635d1ab3a8e5290e3ef83eed","benches/tuples.rs":"412a952f08bb03695952d5cfd57949dcf28be8b99e3c6653994bdb8af9654653","bors.toml":"eed8564cdc475f30ff4147781c5e50176b3048b5d24b272d1354dad952fd00be","custom.css":"03d2316d325a09f03f0fae54d24b64f784518a8249432edbd60e01436be900d5","examples/iris.data":"596ffd580471ca4d4880f8e439c7281f3b50d8249a5960353cb200b1490f63a0","examples/iris.rs":"3996ca0a62762aec2b102f0f4244fe90d4b4354286d68d80cdc40e35f4352ba3","src/adaptors/mod.rs":"ba6f96d594461c82d67e6c60770ebcb82e80948d28827b5eb613a7072ad8a0eb","src/adaptors/multi_product.rs":"bb239555be38cde1f419bacfd09728f6ccaf51b6b4811c266b5677705175e685","src/combinations.rs":"a9a3fc78eb5c9f3933ff60275a635d0c81f4864a73515dc052aeb2add4ad4909","src/concat_impl.rs":"276339b00588f54c25f8ffbe0ae3c0031f7e52fb53c6578554a0bde1681b58a5","src/cons_tuples_impl.rs":"87c620d2ffdd3475218f5f493dbef601491be9f6cdfe57c44929449b32e6709f","src/diff.rs":"921e2b867d7b32ffedc72a5eb780811322d14d1e0883a608b9028a2afcad0df2","src/either_or_both.rs":"4739b8644fa932b7992e565be6a6bc64dff9f93e345c52f90b3e1f8a67e6d18e","src/format.rs":"412fbe02f12311c6fbcec1044f57ad6991783f5a3f323b9c391accfe4915106f","src/free.rs":"ced78d79c0c78398ac53bf628e77ae84f214972d0dad0507b6687c2f88873aaa","src/group_map.rs":"872d6e243e649ad30c94973c034596cc3377b10018e361bca07e11c612006de6","src/groupbylazy.rs":"a067a12671be9ae05a9152518103f39f7286fde09f758de8af75a1064a3b5567","src/impl_macros.rs":"eb0bb3f70ec1bcaffa6110ae4134c777951ed1e5f48d8c811dbf0a597dc48faa","src/intersperse.rs":"9c18f239654ebfcce1d68a0256d2df6d79a2b8c4fb5df87d67e2ebe04a07e1a9","src/kmerge_impl.rs":"51e71d3e76670a8efb16597a9224d2c9b40cee6bc6270d06b66aadafea6dc26b","src/lib.rs":"d641c89cbe827bf88902dda7af20f1de7b3325a5e857f95181737cbb9afc0692","src/merge_join.rs":"98e6fcc761a558ad21789efe041c3f90e62f6c75e05840670df45ad4f9b07e1f","src/minmax.rs":"4668a7f824fbc133599f43ffb6f7283e5bd603e07df2d8176abc6f25d6af9db0","src/multipeek_impl.rs":"ebe9544d94d0bf7200f7625241a3b5a291b7b564091a08cad40ff08b51f1b1bf","src/pad_tail.rs":"078615a2892f8c6db665074cf6f1be1bef4cf5ee418bc174edcfd4dc703e163f","src/peeking_take_while.rs":"6aea3bb40fb480e9f3695ce2a7a3a2e2346d437ca846d20e6bb3c09beb0934f4","src/process_results_impl.rs":"5f454cf62ceb82cab7c08c0c190de3ae083e219a8acc7a1a22f17eec9cfcd65c","src/put_back_n_impl.rs":"d35858184c525372b22d14d42cdf63726cf0fd50f5bd42ec7a82d55a8e180e9f","src/rciter_impl.rs":"8f51abc7e1ae3320cc5d56fadd66f880a7a06773be656bd8c4712357f01ae1d9","src/repeatn.rs":"4bd1782364b16105fbef3f3de7bf62780710e5c996db44a00e4b5f16c2625d86","src/size_hint.rs":"c1d35b422a696cf3d63e7c90d8f9fdf01a304cf8156e914287c4ef48fea62dd3","src/sources.rs":"9d7eb4dbd87f659d04b4980238c5fc72b71472e16861d17a32cab9b77a3df06a","src/tee.rs":"59cf9ef0b41882307ea1e3503a2ff351f401f4c43d95acf423a990b0bf0e29ae","src/tuple_impl.rs":"0c7f907e85d2ef0661583b36c7b8a7341b8feadafe28d10539a211dff5c028ea","src/unique_impl.rs":"63db2d720ff5e3d9c0d6c2b245ffff25d4040e4fcbcb2a6524b0f912826f86af","src/with_position.rs":"d922f045f6fa090a431be928f3221c6dc37ac6f9bb54461b3b84f99a7e91244a","src/zip_eq_impl.rs":"f857c69120255db16ad6ddec628c79cb573b1d5179fcebab1906bf5b762c02e3","src/zip_longest.rs":"375325ef069970e6fb83c6097c2824877bb0f06e4f1e664e4fe681804abe003c","src/ziptuple.rs":"d7ae7d3c33185ad74ab2bba750ac337b5c236750cc8341dd9883faf6465712a1","tests/merge_join.rs":"546eaffae40010f15a7bcf95bc53f5e9b67424c5b93df6ffb0aaa1e48e8b90c0","tests/peeking_take_while.rs":"a2ae6474e09620a47bb8a6e3c62929261e72c52881370adb2d22e89aa9e9aec8","tests/quick.rs":"24b1ecc7522353d9fb278cb4fa4810437c717ff8a5a2a95e08909511420fc514","tests/test_core.rs":"ec9b8b8227170060a7828e907d6750c7123b4a1618073ac10e2b3fca72bd50d7","tests/test_std.rs":"63a5e52953e7209f72bdfd157047ee7b93a696786d1b39931a3f8a1053a67128","tests/tuples.rs":"5323d15a7abf6545b2655167d3206b6cf6a947e9409a244ea6a8cf4ad8ceac64","tests/zip.rs":"fe213d70c4fa114cb4d1930a6b971f4af617a239041ddb87e6b5a9bbe62261b8"},"package":"f58856976b776fedd95533137617a02fb25719f40e7d9b01c7043cd65474f450"}
\ No newline at end of file
+{"files":{"Cargo.toml":"f552e6082e42d34a3a6a301285a0b0b9aa8e0e4b96078fccef54aa3acd3c1666","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"7576269ea71f767b99297934c0b2367532690f8c4badc695edf8e04ab6a1e545","README.rst":"1be539028ab49d112f1641007d3c29a71eb6075c8e39d5f65d0a684f80de0d89","benches/bench1.rs":"9794e5377019e4cf8caee3e7bb30034cf8ac291a485e64407df321f3f33affa0","benches/extra/mod.rs":"4c5b03e74fc5b02383500c9da9fd6550262706ee569d70d085700f6d0b5749ba","benches/extra/zipslices.rs":"108dd488de366b2d83fb6bcc603ecbf9a017e165ac19d03440074fa244af3fb2","benches/tree_fold1.rs":"84cddbabb1a681f3196430a8e27b060103366143a3ee4c42c3b0628fc00a7543","benches/tuple_combinations.rs":"6a4b89eb2e45fa0c99e5e5942b3196b76998213c66c44b3765b869be42016a82","benches/tuples.rs":"412a952f08bb03695952d5cfd57949dcf28be8b99e3c6653994bdb8af9654653","examples/iris.data":"596ffd580471ca4d4880f8e439c7281f3b50d8249a5960353cb200b1490f63a0","examples/iris.rs":"3996ca0a62762aec2b102f0f4244fe90d4b4354286d68d80cdc40e35f4352ba3","src/adaptors/mod.rs":"65a6f105f976bcc1fa670ca931fd144a6a42b1657a17de11097c30b15e6f653c","src/adaptors/multi_product.rs":"bb239555be38cde1f419bacfd09728f6ccaf51b6b4811c266b5677705175e685","src/combinations.rs":"a9a3fc78eb5c9f3933ff60275a635d0c81f4864a73515dc052aeb2add4ad4909","src/concat_impl.rs":"276339b00588f54c25f8ffbe0ae3c0031f7e52fb53c6578554a0bde1681b58a5","src/cons_tuples_impl.rs":"87c620d2ffdd3475218f5f493dbef601491be9f6cdfe57c44929449b32e6709f","src/diff.rs":"921e2b867d7b32ffedc72a5eb780811322d14d1e0883a608b9028a2afcad0df2","src/either_or_both.rs":"4739b8644fa932b7992e565be6a6bc64dff9f93e345c52f90b3e1f8a67e6d18e","src/format.rs":"412fbe02f12311c6fbcec1044f57ad6991783f5a3f323b9c391accfe4915106f","src/free.rs":"ced78d79c0c78398ac53bf628e77ae84f214972d0dad0507b6687c2f88873aaa","src/group_map.rs":"872d6e243e649ad30c94973c034596cc3377b10018e361bca07e11c612006de6","src/groupbylazy.rs":"a067a12671be9ae05a9152518103f39f7286fde09f758de8af75a1064a3b5567","src/impl_macros.rs":"eb0bb3f70ec1bcaffa6110ae4134c777951ed1e5f48d8c811dbf0a597dc48faa","src/intersperse.rs":"9c18f239654ebfcce1d68a0256d2df6d79a2b8c4fb5df87d67e2ebe04a07e1a9","src/kmerge_impl.rs":"51e71d3e76670a8efb16597a9224d2c9b40cee6bc6270d06b66aadafea6dc26b","src/lib.rs":"9ae7c64d8f30575fbafe579062d9c400b04d9b76876136cea5b2898e2cf88ed6","src/merge_join.rs":"98e6fcc761a558ad21789efe041c3f90e62f6c75e05840670df45ad4f9b07e1f","src/minmax.rs":"4668a7f824fbc133599f43ffb6f7283e5bd603e07df2d8176abc6f25d6af9db0","src/multipeek_impl.rs":"ebe9544d94d0bf7200f7625241a3b5a291b7b564091a08cad40ff08b51f1b1bf","src/pad_tail.rs":"078615a2892f8c6db665074cf6f1be1bef4cf5ee418bc174edcfd4dc703e163f","src/peeking_take_while.rs":"6aea3bb40fb480e9f3695ce2a7a3a2e2346d437ca846d20e6bb3c09beb0934f4","src/process_results_impl.rs":"5f454cf62ceb82cab7c08c0c190de3ae083e219a8acc7a1a22f17eec9cfcd65c","src/put_back_n_impl.rs":"d35858184c525372b22d14d42cdf63726cf0fd50f5bd42ec7a82d55a8e180e9f","src/rciter_impl.rs":"8f51abc7e1ae3320cc5d56fadd66f880a7a06773be656bd8c4712357f01ae1d9","src/repeatn.rs":"4bd1782364b16105fbef3f3de7bf62780710e5c996db44a00e4b5f16c2625d86","src/size_hint.rs":"c1d35b422a696cf3d63e7c90d8f9fdf01a304cf8156e914287c4ef48fea62dd3","src/sources.rs":"9d7eb4dbd87f659d04b4980238c5fc72b71472e16861d17a32cab9b77a3df06a","src/tee.rs":"59cf9ef0b41882307ea1e3503a2ff351f401f4c43d95acf423a990b0bf0e29ae","src/tuple_impl.rs":"0c7f907e85d2ef0661583b36c7b8a7341b8feadafe28d10539a211dff5c028ea","src/unique_impl.rs":"63db2d720ff5e3d9c0d6c2b245ffff25d4040e4fcbcb2a6524b0f912826f86af","src/with_position.rs":"d922f045f6fa090a431be928f3221c6dc37ac6f9bb54461b3b84f99a7e91244a","src/zip_eq_impl.rs":"f857c69120255db16ad6ddec628c79cb573b1d5179fcebab1906bf5b762c02e3","src/zip_longest.rs":"375325ef069970e6fb83c6097c2824877bb0f06e4f1e664e4fe681804abe003c","src/ziptuple.rs":"d7ae7d3c33185ad74ab2bba750ac337b5c236750cc8341dd9883faf6465712a1","tests/merge_join.rs":"546eaffae40010f15a7bcf95bc53f5e9b67424c5b93df6ffb0aaa1e48e8b90c0","tests/peeking_take_while.rs":"a2ae6474e09620a47bb8a6e3c62929261e72c52881370adb2d22e89aa9e9aec8","tests/quick.rs":"24b1ecc7522353d9fb278cb4fa4810437c717ff8a5a2a95e08909511420fc514","tests/test_core.rs":"ec9b8b8227170060a7828e907d6750c7123b4a1618073ac10e2b3fca72bd50d7","tests/test_std.rs":"63a5e52953e7209f72bdfd157047ee7b93a696786d1b39931a3f8a1053a67128","tests/tuples.rs":"5323d15a7abf6545b2655167d3206b6cf6a947e9409a244ea6a8cf4ad8ceac64","tests/zip.rs":"fe213d70c4fa114cb4d1930a6b971f4af617a239041ddb87e6b5a9bbe62261b8"},"package":"7cef527957675adbb9ec77a7e3c44c69d729dc0a80e64fe7d380138ef851af1d"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/itertools/.travis.yml b/rustc_deps/vendor/itertools/.travis.yml
deleted file mode 100644
index ae9acd4..0000000
--- a/rustc_deps/vendor/itertools/.travis.yml
+++ /dev/null
@@ -1,29 +0,0 @@
-language: rust
-sudo: false
-matrix:
-  include:
-    - rust: 1.12.0
-      before_script:
-        # rand 0.4.2 requires rust 1.15, and rand-0.3.22 requires rand-0.4  :/
-        # manually hacking the lockfile due to the limitations of cargo#2773
-        - cargo generate-lockfile
-        - sed -i -e 's/"rand 0.[34].[0-9]\+/"rand 0.3.20/' Cargo.lock
-        - sed -i -e '/^name = "rand"/,/^$/s/version = "0.3.[0-9]\+"/version = "0.3.20"/' Cargo.lock
-    - rust: 1.15.0
-    - rust: stable
-    - rust: beta
-    - rust: nightly
-      env:
-       - BENCH=1
-branches:
-  only:
-    - master
-    # bors branches
-    - staging
-    - trying
-script:
-  - |
-      cargo build --verbose --no-default-features &&
-      cargo build --verbose --features "$FEATURES" &&
-      cargo test --verbose --features "$FEATURES" &&
-      ([ "$BENCH" != 1 ] || cargo bench --verbose --features "$FEATURES")
diff --git a/rustc_deps/vendor/itertools/Cargo.toml b/rustc_deps/vendor/itertools/Cargo.toml
index fc2b0cb..f76e6ab 100644
--- a/rustc_deps/vendor/itertools/Cargo.toml
+++ b/rustc_deps/vendor/itertools/Cargo.toml
@@ -12,8 +12,9 @@
 
 [package]
 name = "itertools"
-version = "0.7.8"
+version = "0.7.9"
 authors = ["bluss"]
+exclude = ["/bors.toml"]
 description = "Extra iterator adaptors, iterator methods, free functions, and macros."
 documentation = "https://docs.rs/itertools/"
 keywords = ["iterator", "data-structure", "zip", "product", "group-by"]
diff --git a/rustc_deps/vendor/itertools/Makefile b/rustc_deps/vendor/itertools/Makefile
deleted file mode 100644
index bb03984..0000000
--- a/rustc_deps/vendor/itertools/Makefile
+++ /dev/null
@@ -1,34 +0,0 @@
-DOCCRATES = itertools
-
-# deps to delete the generated docs
-RMDOCS =
-
-FEATURES =
-
-VERSIONS = $(patsubst %,target/VERS/%,$(DOCCRATES))
-
-docs: mkdocs subst $(RMDOCS)
-
-# https://www.gnu.org/software/make/manual/html_node/Automatic-Variables.html
-$(VERSIONS): Cargo.toml
-	mkdir -p $(@D)
-	cargo pkgid $(@F) | sed -e "s/.*#\(\|.*:\)//" > "$@"
-
-$(DOCCRATES): %: target/VERS/%
-	# Put in the crate version into the docs
-	find ./doc/$@ -name "*.html" -exec sed -i -e "s/<title>\(.*\) - Rust/<title>$@ $(shell cat $<) - \1 - Rust/g" {} \;
-
-subst: $(DOCCRATES)
-
-mkdocs: Cargo.toml
-	cargo doc --features=$(FEATURES) --no-deps
-	rm -rf ./doc
-	cp -r ./target/doc ./doc
-	- cat ./custom.css >> doc/main.css
-
-$(RMDOCS): mkdocs
-	rm -r ./doc/$@
-	sed -i "/searchIndex\['$@'\]/d" doc/search-index.js
-
-
-.PHONY: docs mkdocs subst $(DOCCRATES) $(RMDOCS)
diff --git a/rustc_deps/vendor/itertools/README.rst b/rustc_deps/vendor/itertools/README.rst
index b2a549e..771a6c0 100644
--- a/rustc_deps/vendor/itertools/README.rst
+++ b/rustc_deps/vendor/itertools/README.rst
@@ -21,7 +21,7 @@
 .. code:: toml
 
     [dependencies]
-    itertools = "0.7.3"
+    itertools = "0.7"
 
 How to use in your crate:
 
@@ -31,16 +31,29 @@
 
     use itertools::Itertools;
 
-How to contribute:
+How to contribute
+-----------------
 
 - Fix a bug or implement a new thing
 - Include tests for your new feature, preferably a quickcheck test
 - Make a Pull Request
 
+For new features, please first consider filing a PR to `rust-lang/rust <https://github.com/rust-lang/rust/>`_,
+adding your new feature to the `Iterator` trait of the standard library, if you believe it is reasonable.
+If it isn't accepted there, proposing it for inclusion in ``itertools`` is a good idea.
+The reason for doing is this is so that we avoid future breakage as with ``.flatten()``.
+However, if your feature involves heap allocation, such as storing elements in a ``Vec<T>``,
+then it can't be accepted into ``libcore``, and you should propose it for ``itertools`` directly instead.
 
 Recent Changes
 --------------
 
+- 0.7.9
+
+  - New inclusion policy: See the readme about suggesting features for std before
+    accepting them in itertools.
+  - The ``FoldWhile`` type now implements ``Eq`` and ``PartialEq`` by @jturner314
+
 - 0.7.8
 
   - Add new iterator method ``.tree_fold1()`` which is like ``.fold1()``
diff --git a/rustc_deps/vendor/itertools/benches/bench1.rs b/rustc_deps/vendor/itertools/benches/bench1.rs
index d4342f9..b9d3b4f 100644
--- a/rustc_deps/vendor/itertools/benches/bench1.rs
+++ b/rustc_deps/vendor/itertools/benches/bench1.rs
@@ -103,7 +103,6 @@
     })
 }
 
-/*
 #[bench]
 fn zip_slices_ziptuple(b: &mut test::Bencher)
 {
@@ -113,13 +112,12 @@
     b.iter(|| {
         let xs = black_box(&xs);
         let ys = black_box(&ys);
-        for (&x, &y) in Zip::new((xs, ys)) {
+        for (&x, &y) in itertools::multizip((xs, ys)) {
             test::black_box(x);
             test::black_box(y);
         }
     })
 }
-*/
 
 #[bench]
 fn zipslices(b: &mut test::Bencher)
diff --git a/rustc_deps/vendor/itertools/benches/tuple_combinations.rs b/rustc_deps/vendor/itertools/benches/tuple_combinations.rs
index 1f9075d..4a14b1d 100644
--- a/rustc_deps/vendor/itertools/benches/tuple_combinations.rs
+++ b/rustc_deps/vendor/itertools/benches/tuple_combinations.rs
@@ -6,7 +6,7 @@
 use test::{black_box, Bencher};
 use itertools::Itertools;
 
-// aproximate 100_000 iterations for each combination
+// approximate 100_000 iterations for each combination
 const N1: usize = 100_000;
 const N2: usize = 448;
 const N3: usize = 86;
diff --git a/rustc_deps/vendor/itertools/bors.toml b/rustc_deps/vendor/itertools/bors.toml
deleted file mode 100644
index 2523b2d..0000000
--- a/rustc_deps/vendor/itertools/bors.toml
+++ /dev/null
@@ -1,3 +0,0 @@
-status = [
-"continuous-integration/travis-ci/push"
-]
diff --git a/rustc_deps/vendor/itertools/custom.css b/rustc_deps/vendor/itertools/custom.css
deleted file mode 100644
index bd4b11e..0000000
--- a/rustc_deps/vendor/itertools/custom.css
+++ /dev/null
@@ -1,29 +0,0 @@
-
-.docblock pre.rust { background: #eeeeff; }
-pre.trait, pre.fn, pre.struct, pre.enum, pre.typedef { background: #fcfefc; }
-
-/* Small “example” label for doc examples */
-.docblock pre.rust::before {
-    content: "example";
-    float: right;
-    font-style: italic;
-    font-size: 0.8em;
-    margin-top: -10px;
-    margin-right: -5px;
-}
-
-
-/* Fixup where display in trait listing */
-pre.trait .where::before {
-content: '\a         ';
-}
-
-.docblock code {
-    background-color: inherit;
-    font-weight: bold;
-    padding: 0 0.1em;
-}
-
-a.test-arrow {
-    display: none;
-}
diff --git a/rustc_deps/vendor/itertools/src/adaptors/mod.rs b/rustc_deps/vendor/itertools/src/adaptors/mod.rs
index 127edaa..eb1704f 100644
--- a/rustc_deps/vendor/itertools/src/adaptors/mod.rs
+++ b/rustc_deps/vendor/itertools/src/adaptors/mod.rs
@@ -362,7 +362,7 @@
     }
 }
 
-/// A “meta iterator adaptor”. Its closure recives a reference to the iterator
+/// A “meta iterator adaptor”. Its closure receives a reference to the iterator
 /// and may pick off as many elements as it likes, to produce the next iterator element.
 ///
 /// Iterator element type is *X*, if the return type of `F` is *Option\<X\>*.
diff --git a/rustc_deps/vendor/itertools/src/lib.rs b/rustc_deps/vendor/itertools/src/lib.rs
index 32b5f71..c6518ff 100644
--- a/rustc_deps/vendor/itertools/src/lib.rs
+++ b/rustc_deps/vendor/itertools/src/lib.rs
@@ -386,7 +386,7 @@
         zip_eq(self, other)
     }
 
-    /// A “meta iterator adaptor”. Its closure recives a reference to the
+    /// A “meta iterator adaptor”. Its closure receives a reference to the
     /// iterator and may pick off as many elements as it likes, to produce the
     /// next iterator element.
     ///
@@ -2095,7 +2095,7 @@
 /// An enum used for controlling the execution of `.fold_while()`.
 ///
 /// See [`.fold_while()`](trait.Itertools.html#method.fold_while) for more information.
-#[derive(Copy, Clone, Debug)]
+#[derive(Copy, Clone, Debug, Eq, PartialEq)]
 pub enum FoldWhile<T> {
     /// Continue folding with this value
     Continue(T),
diff --git a/rustc_deps/vendor/itoa/.cargo-checksum.json b/rustc_deps/vendor/itoa/.cargo-checksum.json
index 2c82855..4ce9cb0 100644
--- a/rustc_deps/vendor/itoa/.cargo-checksum.json
+++ b/rustc_deps/vendor/itoa/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"6866f4d14b6799ff440dd8ec8c56ce1a56db06ff2e1fef493559e6c9eed6bb46",".travis.yml":"64a8a20ce275a9961b548989432e474c225c0104b630e3ebb6664c30a11a0416","Cargo.toml":"756bd6e9dbd336547e8e982770c4dc36f67cd0b5d90656033f86cf450879674a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"57b4b49c5ceea9cf94e3856537c01cc1a7e3d071b04d5f5d45155259bfcb83b3","benches/bench.rs":"c4225d539bbc4cee704dcfe59222879b4084bf67d74e0fa973faa69e238c1ff3","src/lib.rs":"21e1c5aa3592989b2a9420303f2fc509b3e55ec7f0ceb2ea01f7fd89758c2cdf","src/udiv128.rs":"efafb66d62b8229478a448ffb3e11a8ad57f5b336aadd59d5b3bf945cfffba96","tests/test.rs":"bca26710b88200a92b0272da6a396a95919a3294a82f928f699b03bd84a838e3"},"package":"1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"}
\ No newline at end of file
+{"files":{"Cargo.toml":"756bd6e9dbd336547e8e982770c4dc36f67cd0b5d90656033f86cf450879674a","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"23f18e03dc49df91622fe2a76176497404e46ced8a715d9d2b67a7446571cca3","README.md":"57b4b49c5ceea9cf94e3856537c01cc1a7e3d071b04d5f5d45155259bfcb83b3","benches/bench.rs":"c4225d539bbc4cee704dcfe59222879b4084bf67d74e0fa973faa69e238c1ff3","src/lib.rs":"21e1c5aa3592989b2a9420303f2fc509b3e55ec7f0ceb2ea01f7fd89758c2cdf","src/udiv128.rs":"efafb66d62b8229478a448ffb3e11a8ad57f5b336aadd59d5b3bf945cfffba96","tests/test.rs":"bca26710b88200a92b0272da6a396a95919a3294a82f928f699b03bd84a838e3"},"package":"1306f3464951f30e30d12373d31c79fbd52d236e5e896fd92f96ec7babbbe60b"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/itoa/.cargo_vcs_info.json b/rustc_deps/vendor/itoa/.cargo_vcs_info.json
deleted file mode 100644
index 6728153..0000000
--- a/rustc_deps/vendor/itoa/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "caec2745c6f2755a9e698ff73c2c4e7bfcdc2111"
-  }
-}
diff --git a/rustc_deps/vendor/itoa/.travis.yml b/rustc_deps/vendor/itoa/.travis.yml
deleted file mode 100644
index 0a076ce..0000000
--- a/rustc_deps/vendor/itoa/.travis.yml
+++ /dev/null
@@ -1,25 +0,0 @@
-sudo: false
-language: rust
-
-matrix:
-  include:
-    - rust: stable
-      - FEATURES="i128"
-    - rust: beta
-      - FEATURES="i128"
-    - rust: nightly
-      env:
-      - FEATURES="i128"
-      - BUILD_BENCH="true"
-    - rust: 1.0.0
-      script: cargo build
-    - rust: 1.20.0
-      script: cargo test
-
-script:
-  - cargo build --verbose --features "$FEATURES"
-  - cargo test --verbose --features "$FEATURES"
-  - cargo build --verbose --no-default-features --features "$FEATURES"
-  - cargo test --verbose --no-default-features --features "$FEATURES"
-  - if [ "$BUILD_BENCH" == "true" ]; then cargo bench --verbose --no-run --features "$FEATURES"; fi
-
diff --git a/rustc_deps/vendor/lazy_static/.cargo-checksum.json b/rustc_deps/vendor/lazy_static/.cargo-checksum.json
index a97f85f..4ba87d2 100644
--- a/rustc_deps/vendor/lazy_static/.cargo-checksum.json
+++ b/rustc_deps/vendor/lazy_static/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"6401bb8df5f75e3c303da25dbfc5b146f394269f454461894940688214032e6e","Cargo.lock":"147e0115d6ea03b59ded1dc9b7745c39de241a8690e7d1bba5492c12547ebaef","Cargo.toml":"bb417b953c7cc8579345598e6ed051c6331cd82e40b3a6a315e60817d665155d","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"0621878e61f0d0fda054bcbe02df75192c28bde1ecc8289cbd86aeba2dd72720","README.md":"490799cc7104e41977f50346ff298e80c6c27961503dab1823e5663d81eda12f","appveyor.yml":"d17efb6bab4af26aa0048930de8bd3310b8d8a9961946a7962fe9fef31f96720","build.rs":"5392e01e6e355fc86549a7ef7aa9e6d9cf98930407a98a12a649811ac4123ae1","src/core_lazy.rs":"f20f2fc2bb751cf74622b05ec44675b6a29bfaa67d91a2e55485c665647d2904","src/heap_lazy.rs":"5fd5bd04dc6ce08f67097f9517da32077f5e6634324740b6bc7673adcbd723a0","src/inline_lazy.rs":"4771105e69bcba888ea78bee1100dc824d756f1f385d4fab70cdf25b7fa31215","src/lib.rs":"b7a907a1e3ec00497e647fd460533f031fe73f4d2954b06ec6834853c6068e4c","tests/no_std.rs":"2a5236bd3892a253855b4dc192f63138239165fa23b9c3421a9faa5482c780aa","tests/test.rs":"8e809c0f0332a3a60fca0113128cdab2cdbee92f03db523cdc4e82f4cd4b9f22"},"package":"ca488b89a5657b0a2ecd45b95609b3e848cf1755da332a0da46e2b2b1cb371a7"}
\ No newline at end of file
+{"files":{"Cargo.toml":"9501e790a183ddbc845edba899bffa05f573c43fa5f79ef065ead842d056fa85","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"0621878e61f0d0fda054bcbe02df75192c28bde1ecc8289cbd86aeba2dd72720","README.md":"f2e94da8b77ac2a097dbc4b93b35912ef41b725624512d83ea968951dd5bdc7d","src/core_lazy.rs":"6b9fb6a4f553058e240756125b6b9ca43a83ed1fb72964343038ea0ea2e1af10","src/inline_lazy.rs":"2ae9a04c5bff40e80194f65b01012f0b42efa527bf717e176c68b4ca5212043c","src/lib.rs":"3defd7a82feced71862161a3c36fcff7cef3e08a51596b2e15d629b9a171a75a","tests/no_std.rs":"d68b149ee51ef5ae2b2906c0c94f5a9812d3b02811b13365c5a35e2ef90d25cf","tests/test.rs":"8e809c0f0332a3a60fca0113128cdab2cdbee92f03db523cdc4e82f4cd4b9f22"},"package":"a374c89b9db55895453a74c1e38861d9deec0b01b405a82516e9d5de4820dea1"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/lazy_static/.travis.yml b/rustc_deps/vendor/lazy_static/.travis.yml
deleted file mode 100644
index 820eec3..0000000
--- a/rustc_deps/vendor/lazy_static/.travis.yml
+++ /dev/null
@@ -1,35 +0,0 @@
-language: rust
-matrix:
-  include:
-    - rust: 1.21.0
-    - rust: stable
-    - os: osx
-    - rust: beta
-    - rust: nightly
-      script:
-        - cargo test
-        - cargo bench
-        - cargo test --features nightly
-        - cargo bench --features nightly
-        - CARGO_CFG_LAZY_STATIC_HEAP_IMPL=1 cargo test
-        - CARGO_CFG_LAZY_STATIC_HEAP_IMPL=1 cargo bench
-        - cargo test --features spin_no_std
-        - cargo bench --features spin_no_std
-        - cd compiletest
-        - cargo clean
-        - cargo test
-        - cd ../
-
-    - rust: nightly
-      before_script:
-        - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-      script:
-        - cargo doc --no-deps --all-features
-      after_success:
-        - travis-cargo --only nightly doc-upload
-script:
-  - cargo test
-
-env:
-  global:
-  - secure: YXu24LptjeYirjWYjWGsMT2m3mB7LvQATE6TVo7VEUXv8GYoy2ORIHD83PeImxC93MmZ01QeUezRzuCW51ZcK92VnNSBttlF60SvIX18VsJrV92tsAhievFstqYQ+fB8DIuQ8noU0jPz7GpI+R9dlTRSImAqWOnVIghA+Wzz7Js=
diff --git a/rustc_deps/vendor/lazy_static/Cargo.lock b/rustc_deps/vendor/lazy_static/Cargo.lock
deleted file mode 100644
index 296fd8c..0000000
--- a/rustc_deps/vendor/lazy_static/Cargo.lock
+++ /dev/null
@@ -1,21 +0,0 @@
-[[package]]
-name = "lazy_static"
-version = "1.1.0"
-dependencies = [
- "spin 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)",
- "version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)",
-]
-
-[[package]]
-name = "spin"
-version = "0.4.9"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[[package]]
-name = "version_check"
-version = "0.1.4"
-source = "registry+https://github.com/rust-lang/crates.io-index"
-
-[metadata]
-"checksum spin 0.4.9 (registry+https://github.com/rust-lang/crates.io-index)" = "37b5646825922b96b5d7d676b5bb3458a54498e96ed7b0ce09dc43a07038fea4"
-"checksum version_check 0.1.4 (registry+https://github.com/rust-lang/crates.io-index)" = "7716c242968ee87e5542f8021178248f267f295a5c4803beae8b8b7fd9bc6051"
diff --git a/rustc_deps/vendor/lazy_static/Cargo.toml b/rustc_deps/vendor/lazy_static/Cargo.toml
index dfa585a..1ffeeff 100644
--- a/rustc_deps/vendor/lazy_static/Cargo.toml
+++ b/rustc_deps/vendor/lazy_static/Cargo.toml
@@ -12,9 +12,9 @@
 
 [package]
 name = "lazy_static"
-version = "1.1.0"
+version = "1.2.0"
 authors = ["Marvin Löbel <loebel.marvin@gmail.com>"]
-build = "build.rs"
+exclude = ["/.travis.yml", "/appveyor.yml"]
 description = "A macro for declaring lazily evaluated statics in Rust."
 documentation = "https://docs.rs/lazy_static"
 readme = "README.md"
@@ -23,14 +23,14 @@
 license = "MIT/Apache-2.0"
 repository = "https://github.com/rust-lang-nursery/lazy-static.rs"
 [dependencies.spin]
-version = "0.4.6"
+version = "0.4.10"
+features = ["once"]
 optional = true
-[build-dependencies.version_check]
-version = "0.1.4"
+default-features = false
 
 [features]
 nightly = []
-spin_no_std = ["nightly", "spin"]
+spin_no_std = ["spin"]
 [badges.appveyor]
 repository = "rust-lang-nursery/lazy-static.rs"
 
diff --git a/rustc_deps/vendor/lazy_static/README.md b/rustc_deps/vendor/lazy_static/README.md
index b91f733..d96cdf8 100644
--- a/rustc_deps/vendor/lazy_static/README.md
+++ b/rustc_deps/vendor/lazy_static/README.md
@@ -13,6 +13,12 @@
 [![Documentation](https://docs.rs/lazy_static/badge.svg)](https://docs.rs/lazy_static)
 [![License](https://img.shields.io/crates/l/lazy_static.svg)](https://github.com/rust-lang-nursery/lazy-static.rs#license)
 
+## Minimum supported `rustc`
+
+`1.24.1+`
+
+This version is explicitly tested in CI and may only be bumped in new minor versions. Any changes to the supported minimum version will be called out in the release notes.
+
 
 # Getting Started
 
@@ -25,7 +31,7 @@
 
 ```toml
 [dependencies]
-lazy_static = "1.1.0"
+lazy_static = "1.2.0"
 ```
 
 ...and see the [docs](https://docs.rs/lazy_static) for how to use it.
diff --git a/rustc_deps/vendor/lazy_static/appveyor.yml b/rustc_deps/vendor/lazy_static/appveyor.yml
deleted file mode 100644
index b138452..0000000
--- a/rustc_deps/vendor/lazy_static/appveyor.yml
+++ /dev/null
@@ -1,61 +0,0 @@
-environment:
-  global:
-    PROJECT_NAME: lazy_static
-    # When this was added there were revocation check failures when using the
-    # libcurl backend as libcurl checks by default, but rustup doesn't provide the
-    # switch to turn this off. Switch to Hyper which looks to not check for
-    # revocation by default like libcurl does.
-    RUSTUP_USE_REQWEST: 1
-    CARGO_HTTP_CHECK_REVOKE: false
-  matrix:
-    # Stable channel
-    - TARGET: i686-pc-windows-gnu
-      CHANNEL: stable
-    - TARGET: i686-pc-windows-msvc
-      CHANNEL: stable
-    - TARGET: x86_64-pc-windows-gnu
-      CHANNEL: stable
-    - TARGET: x86_64-pc-windows-msvc
-      CHANNEL: stable
-    # Beta channel
-    - TARGET: i686-pc-windows-gnu
-      CHANNEL: beta
-    - TARGET: i686-pc-windows-msvc
-      CHANNEL: beta
-    - TARGET: x86_64-pc-windows-gnu
-      CHANNEL: beta
-    - TARGET: x86_64-pc-windows-msvc
-      CHANNEL: beta
-    # Nightly channel
-    - TARGET: i686-pc-windows-gnu
-      CHANNEL: nightly
-    - TARGET: i686-pc-windows-msvc
-      CHANNEL: nightly
-    - TARGET: x86_64-pc-windows-gnu
-      CHANNEL: nightly
-    - TARGET: x86_64-pc-windows-msvc
-      CHANNEL: nightly
-
-# Install Rust and Cargo
-# (Based on from https://github.com/rust-lang/libc/blob/master/appveyor.yml)
-install:
-  - appveyor-retry appveyor DownloadFile https://win.rustup.rs/ -FileName rustup-init.exe
-  - rustup-init.exe -y --default-toolchain %CHANNEL% --default-host %TARGET%
-  - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
-  - if "%TARGET%" == "i686-pc-windows-gnu" set PATH=%PATH%;C:\msys64\mingw32\bin
-  - if "%TARGET%" == "x86_64-pc-windows-gnu" set PATH=%PATH%;C:\msys64\mingw64\bin
-  - rustc -V
-  - cargo -V
-
-build: false
-
-test_script:
-  - cargo build --verbose
-  - cargo test
-  - if [%CHANNEL%]==[nightly] (
-      cd compiletest &&
-      cargo clean &&
-      cargo build --verbose &&
-      cargo test &&
-      cd ../
-    )
diff --git a/rustc_deps/vendor/lazy_static/build.rs b/rustc_deps/vendor/lazy_static/build.rs
deleted file mode 100644
index 3d579f5..0000000
--- a/rustc_deps/vendor/lazy_static/build.rs
+++ /dev/null
@@ -1,44 +0,0 @@
-extern crate version_check;
-
-fn main() {
-    let is_var_set = |s| std::env::var_os(s).is_some();
-
-    // one can manually set a cfg to force an impl -- mostly useful for our own testing
-    let force_heap_cfg = is_var_set("CARGO_CFG_LAZY_STATIC_HEAP_IMPL");
-    let force_inline_cfg = is_var_set("CARGO_CFG_LAZY_STATIC_INLINE_IMPL");
-    let force_spin_cfg = is_var_set("CARGO_CFG_LAZY_STATIC_SPIN_IMPL");
-
-    let impls_forced = [force_heap_cfg, force_inline_cfg, force_spin_cfg]
-        .into_iter()
-        .filter(|&&f| f)
-        .count();
-
-    assert!(
-        impls_forced <= 1,
-        "lazy_static can only be built with one configuration at a time."
-    );
-
-    let nightly_feature_enabled = is_var_set("CARGO_FEATURE_NIGHTLY");
-    let spin_feature_enabled = is_var_set("CARGO_FEATURE_SPIN_NO_STD");
-
-    let version_geq_122 = version_check::is_min_version("1.22.0").unwrap().0;
-    let drop_in_static_supported = version_geq_122 || nightly_feature_enabled;
-
-    // precedence:
-    // 1. explicit requests via cfg or spin_no_std feature
-    // 2. inline impl with newer rustc version or nightly feature (latter for backcompat)
-    // 3. fallback to allocating implementation
-    let impl_name = if force_heap_cfg {
-        "heap"
-    } else if force_inline_cfg {
-        "inline"
-    } else if force_spin_cfg || spin_feature_enabled {
-        "spin"
-    } else if drop_in_static_supported {
-        "inline"
-    } else {
-        "heap"
-    };
-
-    println!("cargo:rustc-cfg=lazy_static_{}_impl", impl_name);
-}
diff --git a/rustc_deps/vendor/lazy_static/src/core_lazy.rs b/rustc_deps/vendor/lazy_static/src/core_lazy.rs
index ba496a6..b66c3e0 100644
--- a/rustc_deps/vendor/lazy_static/src/core_lazy.rs
+++ b/rustc_deps/vendor/lazy_static/src/core_lazy.rs
@@ -12,10 +12,7 @@
 pub struct Lazy<T: Sync>(Once<T>);
 
 impl<T: Sync> Lazy<T> {
-    #[inline(always)]
-    pub const fn new() -> Self {
-        Lazy(Once::new())
-    }
+    pub const INIT: Self = Lazy(Once::INIT);
 
     #[inline(always)]
     pub fn get<F>(&'static self, builder: F) -> &T
@@ -29,6 +26,6 @@
 #[doc(hidden)]
 macro_rules! __lazy_static_create {
     ($NAME:ident, $T:ty) => {
-        static $NAME: $crate::lazy::Lazy<$T> = $crate::lazy::Lazy::new();
+        static $NAME: $crate::lazy::Lazy<$T> = $crate::lazy::Lazy::INIT;
     }
 }
diff --git a/rustc_deps/vendor/lazy_static/src/heap_lazy.rs b/rustc_deps/vendor/lazy_static/src/heap_lazy.rs
deleted file mode 100644
index c67a301..0000000
--- a/rustc_deps/vendor/lazy_static/src/heap_lazy.rs
+++ /dev/null
@@ -1,43 +0,0 @@
-// Copyright 2016 lazy-static.rs Developers
-//
-// Licensed under the Apache License, Version 2.0, <LICENSE-APACHE or
-// http://apache.org/licenses/LICENSE-2.0> or the MIT license <LICENSE-MIT or
-// http://opensource.org/licenses/MIT>, at your option. This file may not be
-// copied, modified, or distributed except according to those terms.
-
-extern crate std;
-
-use self::std::prelude::v1::*;
-use self::std::sync::Once;
-pub use self::std::sync::ONCE_INIT;
-
-pub struct Lazy<T: Sync>(*const T, Once);
-
-impl<T: Sync> Lazy<T> {
-    pub const INIT: Self = Lazy(0 as *const T, ONCE_INIT);
-
-    #[inline(always)]
-    pub fn get<F>(&'static mut self, f: F) -> &T
-    where
-        F: FnOnce() -> T,
-    {
-        unsafe {
-            let r = &mut self.0;
-            self.1.call_once(|| {
-                *r = Box::into_raw(Box::new(f()));
-            });
-
-            &*self.0
-        }
-    }
-}
-
-unsafe impl<T: Sync> Sync for Lazy<T> {}
-
-#[macro_export]
-#[doc(hidden)]
-macro_rules! __lazy_static_create {
-    ($NAME:ident, $T:ty) => {
-        static mut $NAME: $crate::lazy::Lazy<$T> = $crate::lazy::Lazy::INIT;
-    };
-}
diff --git a/rustc_deps/vendor/lazy_static/src/inline_lazy.rs b/rustc_deps/vendor/lazy_static/src/inline_lazy.rs
index 201a3c0..268dd45 100644
--- a/rustc_deps/vendor/lazy_static/src/inline_lazy.rs
+++ b/rustc_deps/vendor/lazy_static/src/inline_lazy.rs
@@ -9,29 +9,35 @@
 extern crate std;
 
 use self::std::prelude::v1::*;
+use self::std::cell::Cell;
 use self::std::sync::Once;
 pub use self::std::sync::ONCE_INIT;
 
-pub struct Lazy<T: Sync>(Option<T>, Once);
+// FIXME: Replace Option<T> with MaybeInitialized<T>
+pub struct Lazy<T: Sync>(Cell<Option<T>>, Once);
 
 impl<T: Sync> Lazy<T> {
-    pub const INIT: Self = Lazy(None, ONCE_INIT);
+    pub const INIT: Self = Lazy(Cell::new(None), ONCE_INIT);
 
     #[inline(always)]
-    pub fn get<F>(&'static mut self, f: F) -> &T
+    pub fn get<F>(&'static self, f: F) -> &T
     where
         F: FnOnce() -> T,
     {
-        {
-            let r = &mut self.0;
-            self.1.call_once(|| {
-                *r = Some(f());
-            });
-        }
+        self.1.call_once(|| {
+            self.0.set(Some(f()));
+        });
+
+        // `self.0` is guaranteed to be `Some` by this point
+        // The `Once` will catch and propegate panics
         unsafe {
-            match self.0 {
+            match *self.0.as_ptr() {
                 Some(ref x) => x,
-                None => unreachable_unchecked(),
+                None => {
+                    debug_assert!(false, "attempted to derefence an uninitialized lazy static. This is a bug");
+
+                    unreachable_unchecked()
+                },
             }
         }
     }
@@ -43,7 +49,7 @@
 #[doc(hidden)]
 macro_rules! __lazy_static_create {
     ($NAME:ident, $T:ty) => {
-        static mut $NAME: $crate::lazy::Lazy<$T> = $crate::lazy::Lazy::INIT;
+        static $NAME: $crate::lazy::Lazy<$T> = $crate::lazy::Lazy::INIT;
     };
 }
 
diff --git a/rustc_deps/vendor/lazy_static/src/lib.rs b/rustc_deps/vendor/lazy_static/src/lib.rs
index a01dd4b..42dc405 100644
--- a/rustc_deps/vendor/lazy_static/src/lib.rs
+++ b/rustc_deps/vendor/lazy_static/src/lib.rs
@@ -100,23 +100,15 @@
 
 */
 
-// NOTE: see build.rs for where these cfg values are set.
-#![cfg_attr(lazy_static_spin_impl, feature(const_fn))]
-
-#![doc(html_root_url = "https://docs.rs/lazy_static/1.1.0")]
+#![doc(html_root_url = "https://docs.rs/lazy_static/1.2.0")]
 #![no_std]
 
-#[cfg(lazy_static_heap_impl)]
-#[path="heap_lazy.rs"]
-#[doc(hidden)]
-pub mod lazy;
-
-#[cfg(lazy_static_inline_impl)]
+#[cfg(not(feature = "spin_no_std"))]
 #[path="inline_lazy.rs"]
 #[doc(hidden)]
 pub mod lazy;
 
-#[cfg(lazy_static_spin_impl)]
+#[cfg(feature = "spin_no_std")]
 #[path="core_lazy.rs"]
 #[doc(hidden)]
 pub mod lazy;
@@ -137,19 +129,16 @@
     (@TAIL, $N:ident : $T:ty = $e:expr) => {
         impl $crate::__Deref for $N {
             type Target = $T;
-            #[allow(unsafe_code)]
             fn deref(&self) -> &$T {
-                unsafe {
-                    #[inline(always)]
-                    fn __static_ref_initialize() -> $T { $e }
+                #[inline(always)]
+                fn __static_ref_initialize() -> $T { $e }
 
-                    #[inline(always)]
-                    unsafe fn __stability() -> &'static $T {
-                        __lazy_static_create!(LAZY, $T);
-                        LAZY.get(__static_ref_initialize)
-                    }
-                    __stability()
+                #[inline(always)]
+                fn __stability() -> &'static $T {
+                    __lazy_static_create!(LAZY, $T);
+                    LAZY.get(__static_ref_initialize)
                 }
+                __stability()
             }
         }
         impl $crate::LazyStatic for $N {
diff --git a/rustc_deps/vendor/lazy_static/tests/no_std.rs b/rustc_deps/vendor/lazy_static/tests/no_std.rs
index b460e79..f94a1aa 100644
--- a/rustc_deps/vendor/lazy_static/tests/no_std.rs
+++ b/rustc_deps/vendor/lazy_static/tests/no_std.rs
@@ -1,5 +1,4 @@
 #![cfg(feature="spin_no_std")]
-#![feature(const_fn)]
 
 #![no_std]
 
diff --git a/rustc_deps/vendor/libc/.cargo-checksum.json b/rustc_deps/vendor/libc/.cargo-checksum.json
index a6070ae..587d758 100644
--- a/rustc_deps/vendor/libc/.cargo-checksum.json
+++ b/rustc_deps/vendor/libc/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"8088167016d06169f8b1eb86ba5f413cdfcb776bd95af46f968d146665ff5afe","Cargo.lock":"5906309e565931df931ef7b4a529c70b53313eea1c7b84abe18b94415f13825c","Cargo.toml":"74e837a30336b387d94fc92db3d1ece407b47318ca1362a2b8f37dfb28064e54","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"a550fd6c92b62c70925cc6a75dd1d40ae93f9a77e3c4e9baacdf014fa0cae550","appveyor.yml":"216f7ac4561aa5810dc84ce5a9950897a8c0496e0615d0211d62348b1c8dc720","ci/README.md":"2e3d7ad13f8c3202e57d2af73aeeebde306221dce7c0907e462e25767a692d6b","ci/android-install-ndk.sh":"725db9025c5905849916bf7c910f98ff0e753484397c2a1f836d48a576d10890","ci/android-install-sdk.sh":"5c3fbe402ac611239ac7715a61f247d1c55fa012f33a5be0b0127dfc196965cf","ci/android-sysimage.sh":"901415631752827454c827e8c51906ba4260612e4021eda98eb7fff771c7d0e8","ci/docker/aarch64-linux-android/Dockerfile":"e17945fba1786dfe766006f50e79baf3f4151ca0c0c14ae96f91483bf345afd7","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"5f430271941e1eecdf9d1a5fb701dd5622e2c4b9da03140fd829bf216e55529d","ci/docker/aarch64-unknown-linux-musl/Dockerfile":"1e8c66067bcbd718119db5eb6e69390c4f0ea72c1543e09b6846a36ef66cd21b","ci/docker/arm-linux-androideabi/Dockerfile":"4e0bdc13254f99bd0db195f91331c634050426e3e4a0fcc63ef25ab795fe2d46","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"dbb025b53b27e406893184290836a50133ecae8295711d5e05b4e41fac9bd262","ci/docker/arm-unknown-linux-musleabihf/Dockerfile":"12b50abdc5605e3a39eff6bb0d0fccb0885896933c5bfbb3d0cbde9068492a0f","ci/docker/asmjs-unknown-emscripten/Dockerfile":"0d9aea5119c2cd136cc2c0a578105d91210e45901ac49b17c5e45f458b1c7551","ci/docker/i686-linux-android/Dockerfile":"4e8377ec0bd9ad2df23bf2c5373200a12750dc9f28c4f10bc83a0150fe1623ee","ci/docker/i686-unknown-linux-gnu/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/i686-unknown-linux-musl/Dockerfile":"f95cd8b514f48686d774b85e4dffccce1a5acd68749d8ff59b204419d448d575","ci/docker/mips-unknown-linux-gnu/Dockerfile":"6d2a9daa299003497c1d441d07b69f730ad75ee49f34520f959b5158e60072e0","ci/docker/mips-unknown-linux-musl/Dockerfile":"4773b2656a7dd6a3b106fcb737428436652edf3d1f48181de3f62c16bf5bd49d","ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile":"7c4d26232f1c1553a6612d9b0b3faac9887e139eaffa025f70d34113dcee812f","ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile":"edb4144c07ade1a8bd65272ec1d3672ad794e9e6b7d01197896e159a70175b58","ci/docker/mipsel-unknown-linux-musl/Dockerfile":"0ca9c12b5618c6d2df04ff820d56fb28e05b43e45eaa506480126b03c5072d48","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"4b247dcc399395815ec9153c1247cc03d764896c484eddcb196d0bf8650d6311","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"e949717a8ba5e123940729ff47ce1c45989c8b8247c576f1488f698b534e0283","ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile":"018591017f499414a9f79477e1c39baa6a47f71fce6812fb1868fb0fcdfb8cea","ci/docker/s390x-unknown-linux-gnu/Dockerfile":"9860f478c5b2dc3bcf76d2cda7f71922a2a2ef54898cc2ed6ea9b9eff094a5c0","ci/docker/sparc64-unknown-linux-gnu/Dockerfile":"1471a694817758331ecdbb23857537563ad7ae56aa3a88e49bf9cd421addcafe","ci/docker/wasm32-unknown-emscripten/Dockerfile":"bd072d6ae91a9160693e402dd77462d3c9dd0716711e719a62af330ae479eb4e","ci/docker/wasm32-unknown-emscripten/node-wrapper.sh":"0eef37c3c4fb16dbc083148b7e7af45f2ae60bd9a1b3a77e1d43da79efbd30c6","ci/docker/x86_64-linux-android/Dockerfile":"aeeaa540189ca712369c564c9a14cbace63217dadcfaf879a2cb40fbdeb08199","ci/docker/x86_64-rumprun-netbsd/Dockerfile":"e8f9287b267c6058eec42d1bca0007cb9a78a1d244dd8e11088368cb61fb17d6","ci/docker/x86_64-rumprun-netbsd/runtest.rs":"53302e9ed39293c1ec68ab56287593907d4aaf5bac9c1c2857b29f754a71d62b","ci/docker/x86_64-unknown-freebsd/Dockerfile":"ab1f14c65c29f3721c7c091bdec2e865fb1abf45fdcdc867201d087966e396c4","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"ab3fa45765802b8155996796fcad9fb82096360ac587e38e6faa3ec345268796","ci/docker/x86_64-unknown-linux-gnux32/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/x86_64-unknown-linux-musl/Dockerfile":"0c31058e39d9f25c6f4f9b7fe78c7c8d135f32bfe52199e9b2e7fa10d5dc3940","ci/dox.sh":"d77171a9da467bb01fc702a28fc3b5099f82a485a627f3d5593a9830c3e1a77c","ci/emscripten-entry.sh":"c97bbec520b57af9b1ae264ca991560e99c3852c99b00a2f673c614d1ba17498","ci/emscripten.sh":"6f66c7b5c3d34a41afc59ceb0a8c3b0880cd6fd9a6344b874ae80bac0639ccb2","ci/ios/deploy_and_run_on_ios_simulator.rs":"be6d2ccfe78df5d77a2c4ee40ffbd22b1bb2ac0a0cf6b2a108f21406f22ce1a8","ci/landing-page-footer.html":"b70b3112c2147f5c967e7481061ef38bc2d79a28dd55a16fb916d9c9426da2c4","ci/landing-page-head.html":"ad69663fac7924f27d0209bc519d55838e86edfc4133713a6fd08caadac1b142","ci/linux-s390x.sh":"d6b732d7795b4ba131326aff893bca6228a7d2eb0e9402f135705413dbbe0dce","ci/linux-sparc64.sh":"c92966838b1ab7ad3b7a344833ee726aba6b647cf5952e56f0ad1ba420b13325","ci/run-docker.sh":"be83bc5a8b5ef913a7c9941ffca24734716028650c9a876123c4c160672c18de","ci/run-qemu.sh":"bb859421170871ef23a8940c5e150efec0c01b95e32d2ce2d37b79a45d9d346c","ci/run.sh":"86b7d1ce555ed5eeeac6b44fd0e9563166ff38ba38e56a82d70800ace3b65946","ci/runtest-android.rs":"a07ddbdd276aedda7876c7e676774178a60d9aeab95df01275a4ee95f59e3044","ci/style.rs":"940c06a676cff1dfc1555b887e46867c6aacc473956cd6aaafaed71824facdb2","ci/test-runner-linux":"cb3713d9e4fa1d9a7c039dfd077af0939921c1f2bf969c9e680ee66e87dc30a4","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"1c2dc787a1b3438970ccd04153c93538719b1a27445707913b90b6f0cdcdde77","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/dox.rs":"8f6037887281b828d8541ce8a549dacaed5d29c05fd9cf78b169838476b82741","src/fuchsia/aarch64.rs":"8366ac6f51e494aad9266ccab2b3a95c5ed7aa3a9f77ea672413283440919743","src/fuchsia/mod.rs":"e5b7e6ff40e670200c52919b53474627931b4def18d452323999de201953cf21","src/fuchsia/powerpc64.rs":"390e8db54271a1d5f512d54a21b328091a792378bf9b42b49b6c1a72388da4ec","src/fuchsia/x86_64.rs":"b4a3eff94dcf1ffe41e6500468ca2cff0e97ddbcc75fe079b6ac7adb1e493f56","src/lib.rs":"bbad6abf79078649e76c2379c3c3fcbc4198430736e726a01d96a8f1439e8cb1","src/macros.rs":"8ad55edea39fad158e80c5df0d7b520b6863f5088db4db286ba31c12cbc4d67d","src/redox/mod.rs":"685d4d39911e855bf0fd7879b9a02bc15cefebfb0f520382c1a1353364f0d523","src/redox/net.rs":"f2e1922883f208cb46c00744da4a68feccfbec576c6981978ad404e46f818c8b","src/unix/bsd/apple/b32.rs":"41699d2802327b0a4d4aa50cd20b1e366b442176cbedab27ca888ac0446c9156","src/unix/bsd/apple/b64.rs":"0cda592881a1db30f2d96ff0f67cf4214aa99881dfe4f2fb474ef7ec78bd204a","src/unix/bsd/apple/mod.rs":"ac02092ad74cb81fa789e89d541d79525d2298ac77842847b48e5fd1a83fff0d","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"7a8df4e8079ed60ad4ac35362901eb2fea4d53384709e4ac45930899b84f8eaf","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/freebsd/mod.rs":"1b158199be42b37708f10d0e73164cf0b63a2b5ae0e6fcc1feab5944f5377f24","src/unix/bsd/freebsdlike/freebsd/x86.rs":"54311d3ebf2bb091ab22361e377e6ef9224aec2ecfe459fbfcedde4932db9c58","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/mod.rs":"9ddcc86d3bb76f426e26c4df8d853b3715a7d6d9006acaa4fa26b2b0f5bb3314","src/unix/bsd/mod.rs":"a1030452eed4ec52a39e9f39040e8fae4309143c7af145efadd9b425caa39672","src/unix/bsd/netbsdlike/mod.rs":"6fb522d55eced39ef1bc28873f9ae8d5ab141acde09c5cb6a22aeca577d916ad","src/unix/bsd/netbsdlike/netbsd/mod.rs":"1cd66ed5967c788562d4ad626cfbeb1544f4b9267111de5f6790379b8327f28e","src/unix/bsd/netbsdlike/netbsd/other/b32/mod.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/netbsd/other/b64/mod.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/netbsd/other/mod.rs":"4d9f7091af8e166943ac6f42ce85558909e5b6e61325039bff7adfbcf4b90212","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"92459d80b8e5b570c0efe35a1d244d38f23072cd28b6581dfcb313dc9bfc3d51","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"37fea61239bd53cd951fd7bc800229f663be2e9ad2e1539ebdf73767ca28b469","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"820092e397c7ec259cd2de8f2444083a8e57071c02d73d678701dfa7807726e9","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"973331fd80876db55467913556d81f45ea1ede03322fef9c5d552aba833d2207","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"44b7ea81cf363777b29935da175e702cbf45ed78f7498ae57faf44aa32335085","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"7c959cdb3415f68a0f948117b9aa87a17463e57ab97cc3235f2567454b706653","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"8b8a7a51e1bc20407e42b0ab6c1a0cd1c8fc4f3ef61a04ccb7c8e312495ce30b","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"a8bb096695eea74fb1c5c6766c1e680d28378c452dbc622fa5f91c6ce204306f","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"af909129f76f9bbe571dee2e78f43afd63ff6e46c27a429da43c239537330283","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"d9f59ee9a994490122986b7ae5e3064bf9ce0b888349a388a50341a4c7069842","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"2fbe398c1fb5251dda6213741a193e50aae4622807cb255d1dd2e82b536f0c65","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"90d4f6b063fd4de42fd302cbc9d9902fd99ac1d71dc48cb8bc6ad7b4c902e481","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"eadc87bfea5f5e8ea50a3776b526cea2b0bfaf6d55240ba88134e19670f8a3a6","src/unix/notbsd/emscripten.rs":"d2d817af2b1496c1ee173f216c478a3a1c26223ef938797103bc50a265284662","src/unix/notbsd/linux/mips/mips32.rs":"a483ddfd10765b7d5090dc21686eee8842649cd21236828a42d634114885f5f9","src/unix/notbsd/linux/mips/mips64.rs":"9fff696e3943cf206b549d1ae13fa361828e9a8454e2d5730eeaa1c172ff370d","src/unix/notbsd/linux/mips/mod.rs":"af1b7bffff09aa5d8662e6452f72bc1e55b6639899b8c2a4be9cd1cfb245de01","src/unix/notbsd/linux/mod.rs":"081cb74be8b465c9cf86289f675cb7c6f7d7eee39713a6764e1871eabcbaee44","src/unix/notbsd/linux/musl/b32/arm.rs":"9d9bff31ab0925a1f62a20945d36a83b94ce3ab78dd202cd468bb31556b21725","src/unix/notbsd/linux/musl/b32/mips.rs":"cb38c463aebfc235f31880db158dd47c6e21f182a092d3f3087d92994b7711da","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"3930a2825657ac9208935341e29cfa62f6e37fc5c6b2c0d0dc9ac8c3b5569d59","src/unix/notbsd/linux/musl/b32/x86.rs":"c02dd333012cf65cb8873fa211eff5e63d466be55451a347510e3d4f50ed515e","src/unix/notbsd/linux/musl/b64/aarch64.rs":"4d79d86d11fbb8cb7a74084e410a1140e3c89dfc1842cdfb213f3a0ca93046df","src/unix/notbsd/linux/musl/b64/mod.rs":"caac00326693b372d6805e4dda239475e7fef36368881f372c006264844fda0d","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"24514e41be4b5f5e0ffbe8a25a99dae8989489b607db59e8bfa345f8e65c9963","src/unix/notbsd/linux/musl/b64/x86_64.rs":"25340999290a63d564ec149532c905f59c312ec369f8806d6b15df66fa1b8857","src/unix/notbsd/linux/musl/mod.rs":"17c70acf9c6eabeb73916c2abb7d7e8b0310214090faae4a8dc2fd183a9b45ba","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"dac0fd1054a0fa163bce85df58c4ad4d222d8b7353bdb4364482b46c19991d03","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"49376e3ed0f3ff95c230ac20751911fe3c608dfe15c7c118b069fd7a954d8db9","src/unix/notbsd/linux/other/b64/aarch64.rs":"d57f3e06a0ac8affc5bf9d17e1f217ef1d1d714c947f47e647e0e038deaf48b2","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"024057a910d0b885c63443165d34ce33f972973a9a8f5979906198180b19ad8b","src/unix/notbsd/linux/other/b64/sparc64.rs":"bb28f201e29c7f490a42dd2673eb8180fd82c1824a5d21aeb5aed674ffcc6e07","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"afba464e903d350325a1ca3d9d5af1659efc0ede83a43dbac4dbd60c522e2ad1","src/unix/notbsd/linux/other/mod.rs":"add154a8cfe9392d5a73b6055eb1419902e2b8b5458c22586a6ef8f90f89501b","src/unix/notbsd/linux/s390x.rs":"033cb7c4ee00af352698615de0248a5c6c9bcff57ba671ee22d31b70ef86fb4a","src/unix/notbsd/mod.rs":"134502158bab09d5189249ef400c9ddf7fdf5d1a1bd3134484ca82b80a0833e7","src/unix/solaris/mod.rs":"9c52a7479b56d3bc1f2c9ba5bb44f71ab1470989a54d3d0d85571e19489e4b7e","src/unix/uclibc/mips/mips32.rs":"9739c5fb47f389a0394ef08ee30da97a3de0a1300020731a8cc0a033616011b2","src/unix/uclibc/mips/mips64.rs":"230583280bbc7b3c7fcdb61244f51fa1af5944ca127c7cf83c598fe2313713d0","src/unix/uclibc/mips/mod.rs":"3f86061d05a8da7d923310550b7d40c6223f0c907d77edc86b7a78da1d647f76","src/unix/uclibc/mod.rs":"8cf2db30468476b917a60fdffe475917302875a3a4150f29a042ebee182545d1","src/unix/uclibc/x86_64/l4re.rs":"68fd3a833fd1f7caf784a084224f384bdbdfb8b5a14ef94c4f5155409afb3439","src/unix/uclibc/x86_64/mod.rs":"419182836aedd426a5c9e6b8667058adf86ac8f43af73ce8d00c503f8ff8f414","src/unix/uclibc/x86_64/other.rs":"f03b47842896f2f3ae6f8ebdcbcf0276454f880349d9cf00e3d304f8136893c5","src/windows.rs":"e41357d610608bad81abf285306ad8b127b6f02d5132f63c4942861980b47d59"},"package":"76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d"}
\ No newline at end of file
+{"files":{"Cargo.toml":"74e837a30336b387d94fc92db3d1ece407b47318ca1362a2b8f37dfb28064e54","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"a550fd6c92b62c70925cc6a75dd1d40ae93f9a77e3c4e9baacdf014fa0cae550","appveyor.yml":"216f7ac4561aa5810dc84ce5a9950897a8c0496e0615d0211d62348b1c8dc720","ci/README.md":"2e3d7ad13f8c3202e57d2af73aeeebde306221dce7c0907e462e25767a692d6b","ci/android-install-ndk.sh":"725db9025c5905849916bf7c910f98ff0e753484397c2a1f836d48a576d10890","ci/android-install-sdk.sh":"5c3fbe402ac611239ac7715a61f247d1c55fa012f33a5be0b0127dfc196965cf","ci/android-sysimage.sh":"901415631752827454c827e8c51906ba4260612e4021eda98eb7fff771c7d0e8","ci/docker/aarch64-linux-android/Dockerfile":"e17945fba1786dfe766006f50e79baf3f4151ca0c0c14ae96f91483bf345afd7","ci/docker/aarch64-unknown-linux-gnu/Dockerfile":"5f430271941e1eecdf9d1a5fb701dd5622e2c4b9da03140fd829bf216e55529d","ci/docker/aarch64-unknown-linux-musl/Dockerfile":"1e8c66067bcbd718119db5eb6e69390c4f0ea72c1543e09b6846a36ef66cd21b","ci/docker/arm-linux-androideabi/Dockerfile":"4e0bdc13254f99bd0db195f91331c634050426e3e4a0fcc63ef25ab795fe2d46","ci/docker/arm-unknown-linux-gnueabihf/Dockerfile":"dbb025b53b27e406893184290836a50133ecae8295711d5e05b4e41fac9bd262","ci/docker/arm-unknown-linux-musleabihf/Dockerfile":"12b50abdc5605e3a39eff6bb0d0fccb0885896933c5bfbb3d0cbde9068492a0f","ci/docker/asmjs-unknown-emscripten/Dockerfile":"0d9aea5119c2cd136cc2c0a578105d91210e45901ac49b17c5e45f458b1c7551","ci/docker/i686-linux-android/Dockerfile":"4e8377ec0bd9ad2df23bf2c5373200a12750dc9f28c4f10bc83a0150fe1623ee","ci/docker/i686-unknown-linux-gnu/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/i686-unknown-linux-musl/Dockerfile":"f95cd8b514f48686d774b85e4dffccce1a5acd68749d8ff59b204419d448d575","ci/docker/mips-unknown-linux-gnu/Dockerfile":"6d2a9daa299003497c1d441d07b69f730ad75ee49f34520f959b5158e60072e0","ci/docker/mips-unknown-linux-musl/Dockerfile":"4773b2656a7dd6a3b106fcb737428436652edf3d1f48181de3f62c16bf5bd49d","ci/docker/mips64-unknown-linux-gnuabi64/Dockerfile":"7c4d26232f1c1553a6612d9b0b3faac9887e139eaffa025f70d34113dcee812f","ci/docker/mips64el-unknown-linux-gnuabi64/Dockerfile":"edb4144c07ade1a8bd65272ec1d3672ad794e9e6b7d01197896e159a70175b58","ci/docker/mipsel-unknown-linux-musl/Dockerfile":"0ca9c12b5618c6d2df04ff820d56fb28e05b43e45eaa506480126b03c5072d48","ci/docker/powerpc-unknown-linux-gnu/Dockerfile":"4b247dcc399395815ec9153c1247cc03d764896c484eddcb196d0bf8650d6311","ci/docker/powerpc64-unknown-linux-gnu/Dockerfile":"e949717a8ba5e123940729ff47ce1c45989c8b8247c576f1488f698b534e0283","ci/docker/powerpc64le-unknown-linux-gnu/Dockerfile":"018591017f499414a9f79477e1c39baa6a47f71fce6812fb1868fb0fcdfb8cea","ci/docker/s390x-unknown-linux-gnu/Dockerfile":"9860f478c5b2dc3bcf76d2cda7f71922a2a2ef54898cc2ed6ea9b9eff094a5c0","ci/docker/sparc64-unknown-linux-gnu/Dockerfile":"1471a694817758331ecdbb23857537563ad7ae56aa3a88e49bf9cd421addcafe","ci/docker/wasm32-unknown-emscripten/Dockerfile":"bd072d6ae91a9160693e402dd77462d3c9dd0716711e719a62af330ae479eb4e","ci/docker/wasm32-unknown-emscripten/node-wrapper.sh":"0eef37c3c4fb16dbc083148b7e7af45f2ae60bd9a1b3a77e1d43da79efbd30c6","ci/docker/x86_64-linux-android/Dockerfile":"aeeaa540189ca712369c564c9a14cbace63217dadcfaf879a2cb40fbdeb08199","ci/docker/x86_64-rumprun-netbsd/Dockerfile":"e8f9287b267c6058eec42d1bca0007cb9a78a1d244dd8e11088368cb61fb17d6","ci/docker/x86_64-rumprun-netbsd/runtest.rs":"53302e9ed39293c1ec68ab56287593907d4aaf5bac9c1c2857b29f754a71d62b","ci/docker/x86_64-unknown-freebsd/Dockerfile":"ab1f14c65c29f3721c7c091bdec2e865fb1abf45fdcdc867201d087966e396c4","ci/docker/x86_64-unknown-linux-gnu/Dockerfile":"ab3fa45765802b8155996796fcad9fb82096360ac587e38e6faa3ec345268796","ci/docker/x86_64-unknown-linux-gnux32/Dockerfile":"f22ac412525ef15b33ab8ccd8193d97346faf421c17f6ddeffc25b651aba83b7","ci/docker/x86_64-unknown-linux-musl/Dockerfile":"0c31058e39d9f25c6f4f9b7fe78c7c8d135f32bfe52199e9b2e7fa10d5dc3940","ci/dox.sh":"d77171a9da467bb01fc702a28fc3b5099f82a485a627f3d5593a9830c3e1a77c","ci/emscripten-entry.sh":"c97bbec520b57af9b1ae264ca991560e99c3852c99b00a2f673c614d1ba17498","ci/emscripten.sh":"6f66c7b5c3d34a41afc59ceb0a8c3b0880cd6fd9a6344b874ae80bac0639ccb2","ci/ios/deploy_and_run_on_ios_simulator.rs":"be6d2ccfe78df5d77a2c4ee40ffbd22b1bb2ac0a0cf6b2a108f21406f22ce1a8","ci/landing-page-footer.html":"b70b3112c2147f5c967e7481061ef38bc2d79a28dd55a16fb916d9c9426da2c4","ci/landing-page-head.html":"ad69663fac7924f27d0209bc519d55838e86edfc4133713a6fd08caadac1b142","ci/linux-s390x.sh":"d6b732d7795b4ba131326aff893bca6228a7d2eb0e9402f135705413dbbe0dce","ci/linux-sparc64.sh":"c92966838b1ab7ad3b7a344833ee726aba6b647cf5952e56f0ad1ba420b13325","ci/run-docker.sh":"be83bc5a8b5ef913a7c9941ffca24734716028650c9a876123c4c160672c18de","ci/run-qemu.sh":"bb859421170871ef23a8940c5e150efec0c01b95e32d2ce2d37b79a45d9d346c","ci/run.sh":"86b7d1ce555ed5eeeac6b44fd0e9563166ff38ba38e56a82d70800ace3b65946","ci/runtest-android.rs":"a07ddbdd276aedda7876c7e676774178a60d9aeab95df01275a4ee95f59e3044","ci/style.rs":"940c06a676cff1dfc1555b887e46867c6aacc473956cd6aaafaed71824facdb2","ci/test-runner-linux":"cb3713d9e4fa1d9a7c039dfd077af0939921c1f2bf969c9e680ee66e87dc30a4","src/cloudabi/aarch64.rs":"b8550bf1fd7344972aa4db29441486f39f31482d0327534981dbb75959c29114","src/cloudabi/arm.rs":"c197e2781c2839808bd6fcef219a29705b27b992d3ef920e9cf6ac96e2022bbf","src/cloudabi/mod.rs":"1c2dc787a1b3438970ccd04153c93538719b1a27445707913b90b6f0cdcdde77","src/cloudabi/x86.rs":"33eb97f272d2201f3838ae74d444583c7de8f67856852ca375293b20bbd05636","src/cloudabi/x86_64.rs":"400d85d4fe39e26cf2e6ece9ee31c75fe9e88c4bcf4d836ca9f765c05c9c5be3","src/dox.rs":"8f6037887281b828d8541ce8a549dacaed5d29c05fd9cf78b169838476b82741","src/fuchsia/aarch64.rs":"8366ac6f51e494aad9266ccab2b3a95c5ed7aa3a9f77ea672413283440919743","src/fuchsia/mod.rs":"e5b7e6ff40e670200c52919b53474627931b4def18d452323999de201953cf21","src/fuchsia/powerpc64.rs":"390e8db54271a1d5f512d54a21b328091a792378bf9b42b49b6c1a72388da4ec","src/fuchsia/x86_64.rs":"b4a3eff94dcf1ffe41e6500468ca2cff0e97ddbcc75fe079b6ac7adb1e493f56","src/lib.rs":"bbad6abf79078649e76c2379c3c3fcbc4198430736e726a01d96a8f1439e8cb1","src/macros.rs":"8ad55edea39fad158e80c5df0d7b520b6863f5088db4db286ba31c12cbc4d67d","src/redox/mod.rs":"685d4d39911e855bf0fd7879b9a02bc15cefebfb0f520382c1a1353364f0d523","src/redox/net.rs":"f2e1922883f208cb46c00744da4a68feccfbec576c6981978ad404e46f818c8b","src/unix/bsd/apple/b32.rs":"41699d2802327b0a4d4aa50cd20b1e366b442176cbedab27ca888ac0446c9156","src/unix/bsd/apple/b64.rs":"0cda592881a1db30f2d96ff0f67cf4214aa99881dfe4f2fb474ef7ec78bd204a","src/unix/bsd/apple/mod.rs":"ac02092ad74cb81fa789e89d541d79525d2298ac77842847b48e5fd1a83fff0d","src/unix/bsd/freebsdlike/dragonfly/mod.rs":"7a8df4e8079ed60ad4ac35362901eb2fea4d53384709e4ac45930899b84f8eaf","src/unix/bsd/freebsdlike/freebsd/aarch64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/freebsd/mod.rs":"1b158199be42b37708f10d0e73164cf0b63a2b5ae0e6fcc1feab5944f5377f24","src/unix/bsd/freebsdlike/freebsd/x86.rs":"54311d3ebf2bb091ab22361e377e6ef9224aec2ecfe459fbfcedde4932db9c58","src/unix/bsd/freebsdlike/freebsd/x86_64.rs":"97132e2097411034271b8c927ecc94a208a361564680972a6c82998bd30a9826","src/unix/bsd/freebsdlike/mod.rs":"9ddcc86d3bb76f426e26c4df8d853b3715a7d6d9006acaa4fa26b2b0f5bb3314","src/unix/bsd/mod.rs":"a1030452eed4ec52a39e9f39040e8fae4309143c7af145efadd9b425caa39672","src/unix/bsd/netbsdlike/mod.rs":"6fb522d55eced39ef1bc28873f9ae8d5ab141acde09c5cb6a22aeca577d916ad","src/unix/bsd/netbsdlike/netbsd/mod.rs":"1cd66ed5967c788562d4ad626cfbeb1544f4b9267111de5f6790379b8327f28e","src/unix/bsd/netbsdlike/netbsd/other/b32/mod.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/netbsd/other/b64/mod.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/netbsd/other/mod.rs":"4d9f7091af8e166943ac6f42ce85558909e5b6e61325039bff7adfbcf4b90212","src/unix/bsd/netbsdlike/openbsdlike/bitrig/mod.rs":"92459d80b8e5b570c0efe35a1d244d38f23072cd28b6581dfcb313dc9bfc3d51","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86.rs":"bd251a102bed65d5cb3459275f6ec3310fe5803ff4c9651212115548f86256d0","src/unix/bsd/netbsdlike/openbsdlike/bitrig/x86_64.rs":"927eeccaf3269d299db4c2a55f8010807bf43dfa894aea6a783215f5d3560baa","src/unix/bsd/netbsdlike/openbsdlike/mod.rs":"37fea61239bd53cd951fd7bc800229f663be2e9ad2e1539ebdf73767ca28b469","src/unix/bsd/netbsdlike/openbsdlike/openbsd/aarch64.rs":"820092e397c7ec259cd2de8f2444083a8e57071c02d73d678701dfa7807726e9","src/unix/bsd/netbsdlike/openbsdlike/openbsd/mod.rs":"973331fd80876db55467913556d81f45ea1ede03322fef9c5d552aba833d2207","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86.rs":"44b7ea81cf363777b29935da175e702cbf45ed78f7498ae57faf44aa32335085","src/unix/bsd/netbsdlike/openbsdlike/openbsd/x86_64.rs":"7c959cdb3415f68a0f948117b9aa87a17463e57ab97cc3235f2567454b706653","src/unix/haiku/b32.rs":"69ae47fc52c6880e85416b4744500d5655c9ec6131cb737f3b649fceaadce15a","src/unix/haiku/b64.rs":"73e64db09275a8da8d50a13cce2cfa2b136036ddf3a930d2939f337fc995900b","src/unix/haiku/mod.rs":"8b8a7a51e1bc20407e42b0ab6c1a0cd1c8fc4f3ef61a04ccb7c8e312495ce30b","src/unix/hermit/aarch64.rs":"86048676e335944c37a63d0083d0f368ae10ceccefeed9debb3bbe08777fc682","src/unix/hermit/mod.rs":"a8bb096695eea74fb1c5c6766c1e680d28378c452dbc622fa5f91c6ce204306f","src/unix/hermit/x86_64.rs":"ab832b7524e5fb15c49ff7431165ab1a37dc4667ae0b58e8306f4c539bfa110c","src/unix/mod.rs":"af909129f76f9bbe571dee2e78f43afd63ff6e46c27a429da43c239537330283","src/unix/newlib/aarch64/mod.rs":"c408a990f22fb4292a824f38367e9b517e6e6f8623328397ee631cc88b3d1f7d","src/unix/newlib/arm/mod.rs":"2b6dba2e697ab9b4f4bc4dd5f28057249e9b596d1cb395a9322ec87605c4a5c4","src/unix/newlib/mod.rs":"d9f59ee9a994490122986b7ae5e3064bf9ce0b888349a388a50341a4c7069842","src/unix/notbsd/android/b32/arm.rs":"3625a32c7e58cfe683a53486fbe3d42d4e28f00bea31e19cb46ed2bb0b6a140b","src/unix/notbsd/android/b32/mod.rs":"2fbe398c1fb5251dda6213741a193e50aae4622807cb255d1dd2e82b536f0c65","src/unix/notbsd/android/b32/x86.rs":"ae2b7f1d6278caddc007749bb1d09ca33f7593478a0fd7fe98b457dae86c7814","src/unix/notbsd/android/b64/aarch64.rs":"63d65629d79371814910f691672ef593d20244ee09be26f1ebe07ee6212d0163","src/unix/notbsd/android/b64/mod.rs":"90d4f6b063fd4de42fd302cbc9d9902fd99ac1d71dc48cb8bc6ad7b4c902e481","src/unix/notbsd/android/b64/x86_64.rs":"5547aef8dcbaa5a932559f34606fd8d89f6c9c15173d2b1412c12d39b3c1045f","src/unix/notbsd/android/mod.rs":"eadc87bfea5f5e8ea50a3776b526cea2b0bfaf6d55240ba88134e19670f8a3a6","src/unix/notbsd/emscripten.rs":"d2d817af2b1496c1ee173f216c478a3a1c26223ef938797103bc50a265284662","src/unix/notbsd/linux/mips/mips32.rs":"a483ddfd10765b7d5090dc21686eee8842649cd21236828a42d634114885f5f9","src/unix/notbsd/linux/mips/mips64.rs":"9fff696e3943cf206b549d1ae13fa361828e9a8454e2d5730eeaa1c172ff370d","src/unix/notbsd/linux/mips/mod.rs":"af1b7bffff09aa5d8662e6452f72bc1e55b6639899b8c2a4be9cd1cfb245de01","src/unix/notbsd/linux/mod.rs":"081cb74be8b465c9cf86289f675cb7c6f7d7eee39713a6764e1871eabcbaee44","src/unix/notbsd/linux/musl/b32/arm.rs":"9d9bff31ab0925a1f62a20945d36a83b94ce3ab78dd202cd468bb31556b21725","src/unix/notbsd/linux/musl/b32/mips.rs":"cb38c463aebfc235f31880db158dd47c6e21f182a092d3f3087d92994b7711da","src/unix/notbsd/linux/musl/b32/mod.rs":"540928f168f145c136f9dd729ffa12b9d1838d9fe664fc642365d17d7fae648f","src/unix/notbsd/linux/musl/b32/powerpc.rs":"3930a2825657ac9208935341e29cfa62f6e37fc5c6b2c0d0dc9ac8c3b5569d59","src/unix/notbsd/linux/musl/b32/x86.rs":"c02dd333012cf65cb8873fa211eff5e63d466be55451a347510e3d4f50ed515e","src/unix/notbsd/linux/musl/b64/aarch64.rs":"4d79d86d11fbb8cb7a74084e410a1140e3c89dfc1842cdfb213f3a0ca93046df","src/unix/notbsd/linux/musl/b64/mod.rs":"caac00326693b372d6805e4dda239475e7fef36368881f372c006264844fda0d","src/unix/notbsd/linux/musl/b64/powerpc64.rs":"24514e41be4b5f5e0ffbe8a25a99dae8989489b607db59e8bfa345f8e65c9963","src/unix/notbsd/linux/musl/b64/x86_64.rs":"25340999290a63d564ec149532c905f59c312ec369f8806d6b15df66fa1b8857","src/unix/notbsd/linux/musl/mod.rs":"17c70acf9c6eabeb73916c2abb7d7e8b0310214090faae4a8dc2fd183a9b45ba","src/unix/notbsd/linux/other/b32/arm.rs":"d9892f7350b2978335f734f1cd2d7fed60f0f2e66aa05bee3f69549c031f8b14","src/unix/notbsd/linux/other/b32/mod.rs":"dac0fd1054a0fa163bce85df58c4ad4d222d8b7353bdb4364482b46c19991d03","src/unix/notbsd/linux/other/b32/powerpc.rs":"253fcd2f9978525285be1903cc08f3fec2dc3b12d1660a33e2995b4f6b810d1c","src/unix/notbsd/linux/other/b32/x86.rs":"49376e3ed0f3ff95c230ac20751911fe3c608dfe15c7c118b069fd7a954d8db9","src/unix/notbsd/linux/other/b64/aarch64.rs":"d57f3e06a0ac8affc5bf9d17e1f217ef1d1d714c947f47e647e0e038deaf48b2","src/unix/notbsd/linux/other/b64/mod.rs":"63e1a3fdf5f4d1b9820934ab344c91aed5e458e7e05908535d2e942d51a08bf8","src/unix/notbsd/linux/other/b64/not_x32.rs":"fa8636fb93eab230ed53bdec0a06f5b81d6d982cc0800103563c8c1eefcdb2d9","src/unix/notbsd/linux/other/b64/powerpc64.rs":"024057a910d0b885c63443165d34ce33f972973a9a8f5979906198180b19ad8b","src/unix/notbsd/linux/other/b64/sparc64.rs":"bb28f201e29c7f490a42dd2673eb8180fd82c1824a5d21aeb5aed674ffcc6e07","src/unix/notbsd/linux/other/b64/x32.rs":"06a26c5120ced30fc015c220799b67c4401be2f13fc6c7361bebd3d37ff4982d","src/unix/notbsd/linux/other/b64/x86_64.rs":"afba464e903d350325a1ca3d9d5af1659efc0ede83a43dbac4dbd60c522e2ad1","src/unix/notbsd/linux/other/mod.rs":"add154a8cfe9392d5a73b6055eb1419902e2b8b5458c22586a6ef8f90f89501b","src/unix/notbsd/linux/s390x.rs":"033cb7c4ee00af352698615de0248a5c6c9bcff57ba671ee22d31b70ef86fb4a","src/unix/notbsd/mod.rs":"134502158bab09d5189249ef400c9ddf7fdf5d1a1bd3134484ca82b80a0833e7","src/unix/solaris/mod.rs":"9c52a7479b56d3bc1f2c9ba5bb44f71ab1470989a54d3d0d85571e19489e4b7e","src/unix/uclibc/mips/mips32.rs":"9739c5fb47f389a0394ef08ee30da97a3de0a1300020731a8cc0a033616011b2","src/unix/uclibc/mips/mips64.rs":"230583280bbc7b3c7fcdb61244f51fa1af5944ca127c7cf83c598fe2313713d0","src/unix/uclibc/mips/mod.rs":"3f86061d05a8da7d923310550b7d40c6223f0c907d77edc86b7a78da1d647f76","src/unix/uclibc/mod.rs":"8cf2db30468476b917a60fdffe475917302875a3a4150f29a042ebee182545d1","src/unix/uclibc/x86_64/l4re.rs":"68fd3a833fd1f7caf784a084224f384bdbdfb8b5a14ef94c4f5155409afb3439","src/unix/uclibc/x86_64/mod.rs":"419182836aedd426a5c9e6b8667058adf86ac8f43af73ce8d00c503f8ff8f414","src/unix/uclibc/x86_64/other.rs":"f03b47842896f2f3ae6f8ebdcbcf0276454f880349d9cf00e3d304f8136893c5","src/windows.rs":"e41357d610608bad81abf285306ad8b127b6f02d5132f63c4942861980b47d59"},"package":"76e3a3ef172f1a0b9a9ff0dd1491ae5e6c948b94479a3021819ba7d860c8645d"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/libc/.travis.yml b/rustc_deps/vendor/libc/.travis.yml
deleted file mode 100644
index b6a73f0..0000000
--- a/rustc_deps/vendor/libc/.travis.yml
+++ /dev/null
@@ -1,123 +0,0 @@
-language: rust
-rust: stable
-sudo: required
-dist: trusty
-services:
-  - docker
-install:
-  - if [ -z "$NO_ADD" ]; then rustup target add $TARGET; fi
-script:
-  - cargo build $OPT
-  - cargo build $OPT --no-default-features
-  - cargo generate-lockfile --manifest-path libc-test/Cargo.toml
-  - if [[ $TRAVIS_OS_NAME = "linux" ]]; then
-      sh ci/run-docker.sh $TARGET;
-    else
-      export CARGO_TARGET_DIR=`pwd`/target;
-      sh ci/run.sh $TARGET;
-    fi
-  - rustc ci/style.rs && ./style src
-env:
-  global:
-    secure: "e2/3QjgRN9atOuSHp22TrYG7QVKcYUWY48Hi9b60w+r1+BhPkTseIJLte7WefRhdXtqpjjUJTooKDhnurFOeHaCT+nmBgiv+FPU893sBl4bhesY4m0vgUJVbNZcs6lTImYekWVb+aqjGdgV/XAgCw7c3kPmrZV0MzGDWL64Xaps="
-matrix:
-  allow_failures:
-    # FIXME(#987) move back to include once 404 is fixed
-    - env: TARGET=s390x-unknown-linux-gnu
-  include:
-    # 1.13.0 compat
-    - env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-      rust: 1.13.0
-      script: rm -f Cargo.lock && cargo build
-      install:
-
-    # build documentation
-    - env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-      rust: nightly
-      script: sh ci/dox.sh
-
-    # stable compat
-    - env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-    - env: TARGET=i686-unknown-linux-gnu
-    - os: osx
-      env: TARGET=x86_64-apple-darwin NO_ADD=1
-      osx_image: xcode9.4
-    - os: osx
-      env: TARGET=i686-apple-darwin
-      osx_image: xcode9.4
-    - env: TARGET=arm-linux-androideabi
-    - env: TARGET=aarch64-linux-android
-    # FIXME(#826) should reenable
-    #- env: TARGET=i686-linux-android
-    - env: TARGET=x86_64-linux-android
-    - env: TARGET=x86_64-unknown-linux-musl
-    - env: TARGET=i686-unknown-linux-musl
-    - env: TARGET=arm-unknown-linux-gnueabihf
-    - env: TARGET=arm-unknown-linux-musleabihf
-    - env: TARGET=aarch64-unknown-linux-gnu
-    - env: TARGET=aarch64-unknown-linux-musl
-      # FIXME(#856)
-      rust: 1.22.1
-    - os: osx
-      osx_image: xcode9.4
-      env: TARGET=i386-apple-ios
-           CARGO_TARGET_I386_APPLE_IOS_RUNNER=$HOME/runtest
-           RUSTFLAGS=-Clink-arg=-mios-simulator-version-min=7.0
-      before_install:
-        rustc ./ci/ios/deploy_and_run_on_ios_simulator.rs -o $HOME/runtest
-    - os: osx
-      osx_image: xcode9.4
-      env: TARGET=x86_64-apple-ios
-           CARGO_TARGET_X86_64_APPLE_IOS_RUNNER=$HOME/runtest
-           RUSTFLAGS=-Clink-arg=-mios-simulator-version-min=7.0
-      before_install:
-        rustc ./ci/ios/deploy_and_run_on_ios_simulator.rs -o $HOME/runtest
-    - env: TARGET=x86_64-rumprun-netbsd
-    - env: TARGET=powerpc-unknown-linux-gnu
-    - env: TARGET=powerpc64-unknown-linux-gnu
-    - env: TARGET=powerpc64le-unknown-linux-gnu
-    - env: TARGET=mips-unknown-linux-musl
-    - env: TARGET=mipsel-unknown-linux-musl
-    - env: TARGET=mips64-unknown-linux-gnuabi64
-    - env: TARGET=mips64el-unknown-linux-gnuabi64
-    - env: TARGET=mips-unknown-linux-gnu
-    - env: TARGET=s390x-unknown-linux-gnu
-    - env: TARGET=sparc64-unknown-linux-gnu
-    - env: TARGET=asmjs-unknown-emscripten
-    - env: TARGET=wasm32-unknown-emscripten
-
-    # beta
-    - env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-      rust: beta
-    - os: osx
-      env: TARGET=x86_64-apple-darwin NO_ADD=1
-      osx_image: xcode9.4
-      rust: beta
-
-    # nightly
-    - env: TARGET=x86_64-unknown-linux-gnu NO_ADD=1
-      rust: nightly
-    - os: osx
-      env: TARGET=x86_64-apple-darwin NO_ADD=1
-      osx_image: xcode9.4
-      rust: nightly
-    # not available on stable
-    # without --release the build fails
-    # see https://github.com/rust-lang/rust/issues/45417
-    - env: TARGET=x86_64-unknown-linux-gnux32 OPT="--release"
-      rust: nightly
-
-    # QEMU based targets that compile in an emulator
-    - env: TARGET=x86_64-unknown-freebsd
-  allow_failures:
-    - env: TARGET=i386-apple-ios
-           CARGO_TARGET_I386_APPLE_IOS_RUNNER=$HOME/runtest
-           RUSTFLAGS=-Clink-arg=-mios-simulator-version-min=7.0
-    - env: TARGET=x86_64-apple-ios
-           CARGO_TARGET_X86_64_APPLE_IOS_RUNNER=$HOME/runtest
-           RUSTFLAGS=-Clink-arg=-mios-simulator-version-min=7.0
-
-notifications:
-  email:
-    on_success: never
-  webhooks: https://buildbot.rust-lang.org/homu/travis
diff --git a/rustc_deps/vendor/libc/Cargo.lock b/rustc_deps/vendor/libc/Cargo.lock
deleted file mode 100644
index 160587d..0000000
--- a/rustc_deps/vendor/libc/Cargo.lock
+++ /dev/null
@@ -1,4 +0,0 @@
-[[package]]
-name = "libc"
-version = "0.2.43"
-
diff --git a/rustc_deps/vendor/log-0.3.9/.cargo-checksum.json b/rustc_deps/vendor/log-0.3.9/.cargo-checksum.json
index 115b304..5fc3b71 100644
--- a/rustc_deps/vendor/log-0.3.9/.cargo-checksum.json
+++ b/rustc_deps/vendor/log-0.3.9/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"2cdde67eec211928d7e667e5ade109cdf0f74c3417c47cc48905929c5c165230","Cargo.toml":"827b8cdf64e9652b178d6033fdcb4fc04a1382edf67ce4f2c6dce39943349f10","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"7c831cff45cfd33333cc246815dccb25bfa0b981053656e707828fe3f25151da","appveyor.yml":"c61473b8c780ad2626282ce2b2ba0ef278082b6afe151a62ff419f33eaf90221","src/lib.rs":"8238bde9046b1b4a0d21b5ae9029abd672a7d314581b1fd8d0890b2a3052d443","src/macros.rs":"9068d69d32e989ac273ce73659125d31cf4a166076eefdad74dfbdf9506cf9c4"},"package":"e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"}
\ No newline at end of file
+{"files":{"Cargo.toml":"827b8cdf64e9652b178d6033fdcb4fc04a1382edf67ce4f2c6dce39943349f10","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"7c831cff45cfd33333cc246815dccb25bfa0b981053656e707828fe3f25151da","appveyor.yml":"c61473b8c780ad2626282ce2b2ba0ef278082b6afe151a62ff419f33eaf90221","src/lib.rs":"8238bde9046b1b4a0d21b5ae9029abd672a7d314581b1fd8d0890b2a3052d443","src/macros.rs":"9068d69d32e989ac273ce73659125d31cf4a166076eefdad74dfbdf9506cf9c4"},"package":"e19e8d5c34a3e0e2223db8e060f9e8264aeeb5c5fc64a4ee9965c062211c024b"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/log-0.3.9/.travis.yml b/rustc_deps/vendor/log-0.3.9/.travis.yml
deleted file mode 100644
index 4799815..0000000
--- a/rustc_deps/vendor/log-0.3.9/.travis.yml
+++ /dev/null
@@ -1,30 +0,0 @@
-language: rust
-sudo: false
-rust:
-  - stable
-  - beta
-  - nightly
-before_script:
-  - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-script:
-  - cargo build --verbose
-  - ([ $TRAVIS_RUST_VERSION != nightly ] || cargo build --verbose --no-default-features)
-  - ([ $TRAVIS_RUST_VERSION != nightly ] || cargo build --verbose --features nightly)
-  - cargo test --verbose
-  - ([ $TRAVIS_RUST_VERSION != nightly ] || cargo test --verbose --no-default-features)
-  - cargo test --verbose --manifest-path log-test/Cargo.toml
-  - cargo test --verbose --manifest-path env/Cargo.toml
-  - cargo test --verbose --manifest-path env/Cargo.toml --no-default-features
-  - cargo run --verbose --manifest-path tests/max_level_features/Cargo.toml
-  - cargo run --verbose --manifest-path tests/max_level_features/Cargo.toml --release
-  - ([ $TRAVIS_RUST_VERSION != nightly ] || cargo doc --no-deps --features nightly)
-  - CARGO_TARGET_DIR=target cargo doc --no-deps --manifest-path env/Cargo.toml
-after_success:
-  - travis-cargo --only nightly doc-upload
-env:
-  global:
-    secure: "VPHgnszydMudYTY8cthHj/Dmxqp7OmTiu4Sa/705Udsx+tYblTv+8WdThkClo3C/asStVcxlaRWAp91UX32/k4SfkPz17XId3Wadyt03r73ANm6ZOWY+qty+3/LINm54kuTxYUDDTbD6NaFNPFQLIE0xCpJeiXUQTlaMk6z0W3M="
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/log/.cargo-checksum.json b/rustc_deps/vendor/log/.cargo-checksum.json
index 55aab66..31dc666 100644
--- a/rustc_deps/vendor/log/.cargo-checksum.json
+++ b/rustc_deps/vendor/log/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"25aebd6cce4993172e05e26454032cdc621acdf173687f2785263a6782f6f557",".travis.yml":"8e95f3543ff36e1fd0e2e2fcc98b31e20dcc19d220f3d7d19bfb9aeb61030823","CHANGELOG.md":"f201f429d849e6aaa5c3948770bf7fa29bc77358346a369a2a88cab0e8b76edb","Cargo.toml":"8f9b47fadc3b8250a3869e4bf4da63f6ccf4522bbd962ad5c39be9d072189d5e","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"224146f378b819f78b735156c93002d81dd9d1998b221bf26ca2bca04223f29e","appveyor.yml":"d5376a881aef6dc3bed6a6b51f1f1c3801b88fc77a12895f6953190256e965bc","src/lib.rs":"a6590c47262193de32b762330694cd97bc68d0a29840ae86f5fb55c88e12e960","src/macros.rs":"2d180878886c945c6f3a11f556a84c7cef86f6743eaf7063b343754f8aab09d0","src/serde.rs":"a5ae50d6f5ac538a5ca57ee58031a2582afa6989c741574584756632a4131ba7","tests/filters.rs":"6aee024d4594b4fde772e35c5d3318e5aa5d9aa4eaeafb04e4c7c922be4ac837"},"package":"d4fcce5fa49cc693c312001daf1d13411c4a5283796bac1084299ea3e567113f"}
\ No newline at end of file
+{"files":{"CHANGELOG.md":"817c711701c9925f2494c5a2e09c679efd4026e121395b0167e722eb827eb2bf","Cargo.toml":"86f094aa5d1cea5b682852ec8a80a3cb954fc3d5267bd201e2e956d89b17f4aa","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"ebfbd97d184c4474295e36e30e45779bb40bc7c07610734058dfa272a922927e","appveyor.yml":"d5376a881aef6dc3bed6a6b51f1f1c3801b88fc77a12895f6953190256e965bc","src/lib.rs":"43acb02c1d3440235e464b6ab51e52824a7d604390e278d098054e76e686b798","src/macros.rs":"728a5309f35c84895ff1935c712f57464e2239dddb09b6fd84ff289a66c34b46","src/serde.rs":"a5ae50d6f5ac538a5ca57ee58031a2582afa6989c741574584756632a4131ba7","tests/filters.rs":"6aee024d4594b4fde772e35c5d3318e5aa5d9aa4eaeafb04e4c7c922be4ac837"},"package":"c84ec4b527950aa83a329754b01dbe3f58361d1c5efacd1f6d68c494d08a17c6"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/log/.cargo_vcs_info.json b/rustc_deps/vendor/log/.cargo_vcs_info.json
deleted file mode 100644
index d7fe5cb..0000000
--- a/rustc_deps/vendor/log/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "d711a6bf4891aedbafddad684b6b42ddc5193c51"
-  }
-}
diff --git a/rustc_deps/vendor/log/.travis.yml b/rustc_deps/vendor/log/.travis.yml
deleted file mode 100644
index f8b4ff4..0000000
--- a/rustc_deps/vendor/log/.travis.yml
+++ /dev/null
@@ -1,20 +0,0 @@
-language: rust
-sudo: false
-rust:
-  - 1.16.0
-  - stable
-  - beta
-  - nightly
-script:
-  - cargo build --verbose
-  - cargo build --verbose --features serde
-  - cargo build --verbose --features std
-  - cargo test --verbose
-  - cargo test --verbose --features serde
-  - cargo test --verbose --features std
-  - cargo run --verbose --manifest-path tests/max_level_features/Cargo.toml
-  - cargo run --verbose --manifest-path tests/max_level_features/Cargo.toml --release
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/log/CHANGELOG.md b/rustc_deps/vendor/log/CHANGELOG.md
index e645f00..edc1617 100644
--- a/rustc_deps/vendor/log/CHANGELOG.md
+++ b/rustc_deps/vendor/log/CHANGELOG.md
@@ -2,6 +2,12 @@
 
 ## [Unreleased]
 
+## [0.4.6] - 2018-10-27
+
+### Improved
+
+* Support 2018-style macro import for the `log_enabled!` macro.
+
 ## [0.4.5] - 2018-09-03
 
 ### Improved
@@ -106,8 +112,9 @@
 
 Look at the [release tags] for information about older releases.
 
-[Unreleased]: https://github.com/rust-lang-nursery/log/compare/0.4.5...HEAD
-[0.4.4]: https://github.com/rust-lang-nursery/log/compare/0.4.4...0.4.5
+[Unreleased]: https://github.com/rust-lang-nursery/log/compare/0.4.6...HEAD
+[0.4.6]: https://github.com/rust-lang-nursery/log/compare/0.4.5...0.4.6
+[0.4.5]: https://github.com/rust-lang-nursery/log/compare/0.4.4...0.4.5
 [0.4.4]: https://github.com/rust-lang-nursery/log/compare/0.4.3...0.4.4
 [0.4.3]: https://github.com/rust-lang-nursery/log/compare/0.4.2...0.4.3
 [0.4.2]: https://github.com/rust-lang-nursery/log/compare/0.4.1...0.4.2
diff --git a/rustc_deps/vendor/log/Cargo.toml b/rustc_deps/vendor/log/Cargo.toml
index 66a5c17..c589af9 100644
--- a/rustc_deps/vendor/log/Cargo.toml
+++ b/rustc_deps/vendor/log/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "log"
-version = "0.4.5"
+version = "0.4.6"
 authors = ["The Rust Project Developers"]
 description = "A lightweight logging facade for Rust\n"
 homepage = "https://github.com/rust-lang/log"
diff --git a/rustc_deps/vendor/log/README.md b/rustc_deps/vendor/log/README.md
index cb04a68..b7884ad 100644
--- a/rustc_deps/vendor/log/README.md
+++ b/rustc_deps/vendor/log/README.md
@@ -50,6 +50,16 @@
 }
 ```
 
+If you use Rust 2018, you can use instead the following code to import the crate macros:
+
+```rust
+use log::{info, trace, warn};
+
+pub fn shave_the_yak(yak: &mut Yak) {
+    // …
+}
+```
+
 ## In executables
 
 In order to produce log output executables have to use a logger implementation compatible with the facade.
diff --git a/rustc_deps/vendor/log/src/lib.rs b/rustc_deps/vendor/log/src/lib.rs
index 7d89139..af4de3a 100644
--- a/rustc_deps/vendor/log/src/lib.rs
+++ b/rustc_deps/vendor/log/src/lib.rs
@@ -270,7 +270,7 @@
 #![doc(
     html_logo_url = "https://www.rust-lang.org/logos/rust-logo-128x128-blk-v2.png",
     html_favicon_url = "https://www.rust-lang.org/favicon.ico",
-    html_root_url = "https://docs.rs/log/0.4.5"
+    html_root_url = "https://docs.rs/log/0.4.6"
 )]
 #![warn(missing_docs)]
 #![deny(missing_debug_implementations)]
diff --git a/rustc_deps/vendor/log/src/macros.rs b/rustc_deps/vendor/log/src/macros.rs
index 3fc858e..06ce65a 100644
--- a/rustc_deps/vendor/log/src/macros.rs
+++ b/rustc_deps/vendor/log/src/macros.rs
@@ -197,7 +197,7 @@
 /// # fn expensive_call() -> Data { Data { x: 0, y: 0 } }
 /// # fn main() {}
 /// ```
-#[macro_export]
+#[macro_export(local_inner_macros)]
 macro_rules! log_enabled {
     (target: $target:expr, $lvl:expr) => {{
         let lvl = $lvl;
diff --git a/rustc_deps/vendor/memchr-1.0.2/.cargo-checksum.json b/rustc_deps/vendor/memchr-1.0.2/.cargo-checksum.json
index 872391e..3df40c5 100644
--- a/rustc_deps/vendor/memchr-1.0.2/.cargo-checksum.json
+++ b/rustc_deps/vendor/memchr-1.0.2/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"7c44542bc6662b5af4f15a98b2bcf052a57190922eb280bce93688785c31e323","COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"38694643a2d98dc66c1ea8583b9ee49210e8d92205835e43d9a8cc3216e680fe","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","Makefile":"a45a128685a2ae7d4fa39d310786674417ee113055ef290a11f88002285865fc","README.md":"74e385c51a2402527a61a500d66e509fea97961f15bfffab85040064e576fe31","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","appveyor.yml":"b5c1a28f805854370f24e530df912764a9520f4581b33da090f44cec0eef181c","benches/bench.rs":"87cfb76154c3c322691201c6f5649b37665ed8bf1cf303bca971309a4eef6b61","ctags.rust":"3d128d3cc59f702e68953ba2fe6c3f46bc6991fc575308db060482d5da0c79f3","session.vim":"95cb1d7caf0ff7fbe76ec911988d908ddd883381c925ba64b537695bc9f021c4","src/lib.rs":"98c86c86fd996455d7ec94bdfdcedd3ded3b2a7016480d3474808cfe36d00a63"},"package":"148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"}
\ No newline at end of file
+{"files":{"COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"38694643a2d98dc66c1ea8583b9ee49210e8d92205835e43d9a8cc3216e680fe","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","Makefile":"a45a128685a2ae7d4fa39d310786674417ee113055ef290a11f88002285865fc","README.md":"74e385c51a2402527a61a500d66e509fea97961f15bfffab85040064e576fe31","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","appveyor.yml":"b5c1a28f805854370f24e530df912764a9520f4581b33da090f44cec0eef181c","benches/bench.rs":"87cfb76154c3c322691201c6f5649b37665ed8bf1cf303bca971309a4eef6b61","ctags.rust":"3d128d3cc59f702e68953ba2fe6c3f46bc6991fc575308db060482d5da0c79f3","session.vim":"95cb1d7caf0ff7fbe76ec911988d908ddd883381c925ba64b537695bc9f021c4","src/lib.rs":"98c86c86fd996455d7ec94bdfdcedd3ded3b2a7016480d3474808cfe36d00a63"},"package":"148fab2e51b4f1cfc66da2a7c32981d1d3c083a803978268bb11fe4b86925e7a"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/memchr-1.0.2/.travis.yml b/rustc_deps/vendor/memchr-1.0.2/.travis.yml
deleted file mode 100644
index 9120fc1..0000000
--- a/rustc_deps/vendor/memchr-1.0.2/.travis.yml
+++ /dev/null
@@ -1,14 +0,0 @@
-language: rust
-rust:
-  - 1.12.0
-  - stable
-  - beta
-  - nightly
-script:
-  - cargo build --verbose --no-default-features
-  - cargo build --verbose
-  - cargo test --verbose
-  - cargo doc
-  - if [ "$TRAVIS_RUST_VERSION" = "nightly" ]; then
-      cargo bench --verbose;
-    fi
diff --git a/rustc_deps/vendor/memchr/.cargo-checksum.json b/rustc_deps/vendor/memchr/.cargo-checksum.json
index bc3e43b..4826f8a 100644
--- a/rustc_deps/vendor/memchr/.cargo-checksum.json
+++ b/rustc_deps/vendor/memchr/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"63886ed8f649be5fa082d714f5e443f20aea7cfa4ddac738d6105807e37aba5a",".travis.yml":"65294527035173ca8a7e8b11582889c512d6e7627b48c2282bc91f03e5a1b507","COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"9b97600288d4c105b0a456548b6b98f3d3306da93c5e8a0f766a6660c80acda1","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","Makefile":"a45a128685a2ae7d4fa39d310786674417ee113055ef290a11f88002285865fc","README.md":"c6d916d541fc7ee000ee3bcddf014b241bbd6976930462f27985f12081d77faa","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","appveyor.yml":"a54111af120906bd75ddd941ebaa335c7967be3c98a0c340b4dffd667b5a5dd2","build.rs":"9f5847801620525d5afe503bb9f01ed86f652f0bacfcc446ddf6db6fa4665b8a","ci/script.sh":"46a4b4ec29751a7a63b52dbaaa1397695355e0d070b99541c0931d9c7b29d823","ctags.rust":"3d128d3cc59f702e68953ba2fe6c3f46bc6991fc575308db060482d5da0c79f3","session.vim":"95cb1d7caf0ff7fbe76ec911988d908ddd883381c925ba64b537695bc9f021c4","src/c.rs":"86fe35cbb46c8bece9927fbde20f1ca3af526defdde05ac969ad2f4bc9bb25e9","src/fallback.rs":"a79752e3bdc3c16febef90fcddb560f80659f802fac202cce3fdffd0b78f6d08","src/iter.rs":"5949fd42b266d3edebf133172c74700d1c0249bdd26c203bcfd1409583e7b502","src/lib.rs":"f70e83d1fea95d5f420c59783a381899267de151fb09e33ffc66069749631a21","src/naive.rs":"d908e5895586ef88913ee10ff3135aabd20363e0e0871c7006a5d40457851deb","src/tests/iter.rs":"262c09e5cabd1caef533475832da8716638b142ec8015e8270c6f5240e478ac1","src/tests/memchr.rs":"f30074eeab99a16ce5ca8a30f1890f86c43c0422523a7195cbb3ca5f3e465b67","src/tests/mod.rs":"8a7bd2bce336daf3767e5d012d06077b07be445c98af0e15ab03f5eb438ec876","src/x86/avx.rs":"11d4a149007fde9f34168fa43b3cba700667782c987796dca8526564b3e01007","src/x86/mod.rs":"f2e558e364e64b90c1bd55659332f54a3d6d36badc1aab9f67c4cfc2689c557a","src/x86/sse2.rs":"103bb9d555be789e678f1af5baa737e13911f60e90888d25fa2883b39a9dffce","src/x86/sse42.rs":"f671ae9dd2b518a823e499a09ce32d4957bc5ae043db90d61c027e32f688f2b2"},"package":"4b3629fe9fdbff6daa6c33b90f7c08355c1aca05a3d01fa8063b822fcf185f3b"}
\ No newline at end of file
+{"files":{"COPYING":"01c266bced4a434da0051174d6bee16a4c82cf634e2679b6155d40d75012390f","Cargo.toml":"67dd2af5f82f799d0c6813c0bd2842d4d6a617245e4b72b7852eb5eee01cac12","LICENSE-MIT":"0f96a83840e146e43c0ec96a22ec1f392e0680e6c1226e6f3ba87e0740af850f","README.md":"21eb8e15c7eb21e7983e7f8a832fd7fd9abb261e09b1a19c24d808c55e7cf2b4","UNLICENSE":"7e12e5df4bae12cb21581ba157ced20e1986a0508dd10d0e8a4ab9a4cf94e85c","build.rs":"9f5847801620525d5afe503bb9f01ed86f652f0bacfcc446ddf6db6fa4665b8a","src/c.rs":"86fe35cbb46c8bece9927fbde20f1ca3af526defdde05ac969ad2f4bc9bb25e9","src/fallback.rs":"a79752e3bdc3c16febef90fcddb560f80659f802fac202cce3fdffd0b78f6d08","src/iter.rs":"5949fd42b266d3edebf133172c74700d1c0249bdd26c203bcfd1409583e7b502","src/lib.rs":"f70e83d1fea95d5f420c59783a381899267de151fb09e33ffc66069749631a21","src/naive.rs":"d908e5895586ef88913ee10ff3135aabd20363e0e0871c7006a5d40457851deb","src/tests/iter.rs":"262c09e5cabd1caef533475832da8716638b142ec8015e8270c6f5240e478ac1","src/tests/memchr.rs":"f30074eeab99a16ce5ca8a30f1890f86c43c0422523a7195cbb3ca5f3e465b67","src/tests/mod.rs":"8a7bd2bce336daf3767e5d012d06077b07be445c98af0e15ab03f5eb438ec876","src/x86/avx.rs":"11d4a149007fde9f34168fa43b3cba700667782c987796dca8526564b3e01007","src/x86/mod.rs":"f2e558e364e64b90c1bd55659332f54a3d6d36badc1aab9f67c4cfc2689c557a","src/x86/sse2.rs":"103bb9d555be789e678f1af5baa737e13911f60e90888d25fa2883b39a9dffce","src/x86/sse42.rs":"f671ae9dd2b518a823e499a09ce32d4957bc5ae043db90d61c027e32f688f2b2"},"package":"0a3eb002f0535929f1199681417029ebea04aadc0c7a4224b46be99c7f5d6a16"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/memchr/.cargo_vcs_info.json b/rustc_deps/vendor/memchr/.cargo_vcs_info.json
deleted file mode 100644
index 2014c38..0000000
--- a/rustc_deps/vendor/memchr/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "7c7f2d24ccaeccf0df3d4795738edd600ce638b8"
-  }
-}
diff --git a/rustc_deps/vendor/memchr/.travis.yml b/rustc_deps/vendor/memchr/.travis.yml
deleted file mode 100644
index 8213f46..0000000
--- a/rustc_deps/vendor/memchr/.travis.yml
+++ /dev/null
@@ -1,34 +0,0 @@
-language: rust
-addons:
-  apt:
-    packages:
-      # For dealing with MUSL.
-      - musl-tools
-matrix:
-  fast_finish: true
-  include:
-    - os: osx
-      rust: nightly
-      env: TARGET=x86_64-apple-darwin
-    - os: linux
-      rust: nightly
-      env: TARGET=i686-unknown-linux-musl
-    - os: linux
-      rust: nightly
-      env: TARGET=x86_64-unknown-linux-musl
-    - os: linux
-      rust: nightly
-      env: TARGET=x86_64-unknown-linux-gnu
-    - os: linux
-      rust: beta
-      env: TARGET=x86_64-unknown-linux-gnu
-    - os: linux
-      rust: stable
-      env: TARGET=x86_64-unknown-linux-gnu
-    - os: linux
-      rust: 1.13.0
-      env: TARGET=x86_64-unknown-linux-gnu
-script: ci/script.sh
-branches:
-  only:
-    - master
diff --git a/rustc_deps/vendor/memchr/Cargo.toml b/rustc_deps/vendor/memchr/Cargo.toml
index ca6ac76..ccea6b2 100644
--- a/rustc_deps/vendor/memchr/Cargo.toml
+++ b/rustc_deps/vendor/memchr/Cargo.toml
@@ -12,8 +12,9 @@
 
 [package]
 name = "memchr"
-version = "2.1.0"
+version = "2.1.1"
 authors = ["Andrew Gallant <jamslam@gmail.com>", "bluss"]
+exclude = ["/ci/*", "/.travis.yml", "/Makefile", "/appveyor.yml", "/ctags.rust", "/session.vim"]
 description = "Safe interface to memchr."
 homepage = "https://github.com/BurntSushi/rust-memchr"
 documentation = "https://docs.rs/memchr/"
diff --git a/rustc_deps/vendor/memchr/Makefile b/rustc_deps/vendor/memchr/Makefile
deleted file mode 100644
index 9f956f4..0000000
--- a/rustc_deps/vendor/memchr/Makefile
+++ /dev/null
@@ -1,14 +0,0 @@
-all:
-	echo Nothing to do...
-
-ctags:
-	ctags --recurse --options=ctags.rust --languages=Rust
-
-docs:
-	cargo doc
-	in-dir ./target/doc fix-perms
-	rscp ./target/doc/* gopher:~/www/burntsushi.net/rustdoc/
-
-push:
-	git push origin master
-	git push github master
diff --git a/rustc_deps/vendor/memchr/README.md b/rustc_deps/vendor/memchr/README.md
index 8c3e197..c42f9ef 100644
--- a/rustc_deps/vendor/memchr/README.md
+++ b/rustc_deps/vendor/memchr/README.md
@@ -1,6 +1,6 @@
-This crate provides a safe interface `libc`'s `memchr` and `memrchr`.
-This crate also provides fallback implementations when either function is
-unavailable.
+memchr
+======
+The `memchr` crate provides heavily optimized routines for searching bytes.
 
 [![Build status](https://api.travis-ci.org/BurntSushi/rust-memchr.png)](https://travis-ci.org/BurntSushi/rust-memchr)
 [![Build status](https://ci.appveyor.com/api/projects/status/8i9484t8l4w7uql0/branch/master?svg=true)](https://ci.appveyor.com/project/BurntSushi/rust-memchr/branch/master)
@@ -13,7 +13,28 @@
 
 [https://docs.rs/memchr](https://docs.rs/memchr)
 
-### no_std
+
+### Overview
+
+The `memchr` function is traditionally provided by libc, however, the
+performance of `memchr` can vary significantly depending on the specific
+implementation of libc that is used. They can range from manually tuned
+Assembly implementations (like that found in GNU's libc) all the way to
+non-vectorized C implementations (like that found in MUSL).
+
+To smooth out the differences between implementations of libc, at least
+on `x86_64` for Rust 1.27+, this crate provides its own implementation of
+`memchr` that should perform competitively with the one found in GNU's libc.
+The implementation is in pure Rust and has no dependency on a C compiler or an
+Assembler.
+
+Additionally, GNU libc also provides an extension, `memrchr`. This crate
+provides its own implementation of `memrchr` as well, on top of `memchr2`,
+`memchr3`, `memrchr2` and `memrchr3`. The difference between `memchr` and
+`memchr2` is that that `memchr2` permits finding all occurrences of two bytes
+instead of one. Similarly for `memchr3`.
+
+### Compiling without the standard library
 
 memchr links to the standard library by default, but you can disable the
 `use_std` feature if you want to use it in a `#![no_std]` crate:
@@ -22,15 +43,3 @@
 [dependencies]
 memchr = { version = "2", default-features = false }
 ```
-
-### Performance
-
-On my system (Linux/amd64), `memchr` is about an order of magnitude faster than
-the more idiomatic `haystack.iter().position(|&b| b == needle)`:
-
-```
-test iterator          ... bench:       5,280 ns/iter (+/- 13) = 1893 MB/s
-test iterator_reversed ... bench:       5,271 ns/iter (+/- 7) = 1897 MB/s
-test libc_memchr       ... bench:         202 ns/iter (+/- 0) = 49504 MB/s
-test libc_memrchr      ... bench:         197 ns/iter (+/- 1) = 50761 MB/s
-```
diff --git a/rustc_deps/vendor/memchr/appveyor.yml b/rustc_deps/vendor/memchr/appveyor.yml
deleted file mode 100644
index 9fdcaa8..0000000
--- a/rustc_deps/vendor/memchr/appveyor.yml
+++ /dev/null
@@ -1,26 +0,0 @@
-environment:
-  matrix:
-  - TARGET: x86_64-pc-windows-gnu
-    BITS: 64
-    MSYS2: 1
-  - TARGET: x86_64-pc-windows-msvc
-    BITS: 64
-  - TARGET: i686-pc-windows-gnu
-    BITS: 32
-    MSYS2: 1
-  - TARGET: i686-pc-windows-msvc
-    BITS: 32
-install:
-  - curl -sSf -o rustup-init.exe https://win.rustup.rs/
-  - rustup-init.exe -y --default-host %TARGET%
-  - set PATH=%PATH%;C:\Users\appveyor\.cargo\bin
-  - if defined MSYS2 set PATH=C:\msys64\mingw%BITS%\bin;%PATH%
-  - rustc -V
-  - cargo -V
-build: false
-test_script:
-  - cargo build --verbose --all
-  - cargo test --verbose --all
-branches:
-  only:
-    - master
diff --git a/rustc_deps/vendor/memchr/ci/script.sh b/rustc_deps/vendor/memchr/ci/script.sh
deleted file mode 100755
index 5d3817b..0000000
--- a/rustc_deps/vendor/memchr/ci/script.sh
+++ /dev/null
@@ -1,76 +0,0 @@
-#!/bin/bash
-
-# vim: ft=sh sw=2 ts=2 sts=2
-
-is_x86_64() {
-    case "$TARGET" in
-        x86_64-*)
-            return 0
-            ;;
-        *)
-            return 1
-            ;;
-    esac
-}
-
-host() {
-    case "$TRAVIS_OS_NAME" in
-        linux)
-            echo x86_64-unknown-linux-gnu
-            ;;
-        osx)
-            echo x86_64-apple-darwin
-            ;;
-    esac
-}
-
-set -ex
-
-if command -V lscpu > /dev/null 2>&1; then
-  # Show output of current CPU for debugging purposes.
-  lscpu
-fi
-
-if [[ "$(host)" != "$TARGET" ]]; then
-  rustup target add "$TARGET"
-fi
-cargo build --target "$TARGET" --verbose --no-default-features
-cargo build --target "$TARGET" --verbose
-cargo doc --target "$TARGET" --verbose
-
-# If we're testing on an older version of Rust, then only check that we
-# can build the crate. This is because the dev dependencies might be updated
-# more frequently, and therefore might require a newer version of Rust.
-#
-# This isn't ideal. It's a compromise.
-if [ "$TRAVIS_RUST_VERSION" = "1.13.0" ]; then
-  exit
-fi
-
-cargo test --target "$TARGET" --verbose
-# If we're testing on x86_64, then test all possible permutations of SIMD
-# config.
-if is_x86_64; then
-  preamble="--cfg memchr_disable_auto_simd"
-
-  # Force use of libc.
-  RUSTFLAGS="$preamble" cargo test --target "$TARGET" --verbose
-
-  preamble="$preamble --cfg memchr_runtime_simd"
-  # Force use of fallback
-  RUSTFLAGS="$preamble" cargo test --target "$TARGET" --verbose
-  # Force use of sse2 only
-  RUSTFLAGS="$preamble --cfg memchr_runtime_sse2" \
-    cargo test --target "$TARGET" --verbose
-  # Force use of avx only
-  RUSTFLAGS="$preamble --cfg memchr_runtime_avx" \
-    cargo test --target "$TARGET" --verbose
-fi
-if [[ "$TRAVIS_RUST_VERSION" = "nightly" ]] && is_x86_64 && [[ "$TRAVIS_OS_NAME" = "linux" ]]; then
-  cargo bench \
-    --manifest-path bench/Cargo.toml \
-    --target "$TARGET" \
-    --verbose \
-    -- \
-    --test
-fi
diff --git a/rustc_deps/vendor/memchr/ctags.rust b/rustc_deps/vendor/memchr/ctags.rust
deleted file mode 100644
index b42edf7..0000000
--- a/rustc_deps/vendor/memchr/ctags.rust
+++ /dev/null
@@ -1,11 +0,0 @@
---langdef=Rust
---langmap=Rust:.rs
---regex-Rust=/^[ \t]*(#\[[^\]]\][ \t]*)*(pub[ \t]+)?(extern[ \t]+)?("[^"]+"[ \t]+)?(unsafe[ \t]+)?fn[ \t]+([a-zA-Z0-9_]+)/\6/f,functions,function definitions/
---regex-Rust=/^[ \t]*(pub[ \t]+)?type[ \t]+([a-zA-Z0-9_]+)/\2/T,types,type definitions/
---regex-Rust=/^[ \t]*(pub[ \t]+)?enum[ \t]+([a-zA-Z0-9_]+)/\2/g,enum,enumeration names/
---regex-Rust=/^[ \t]*(pub[ \t]+)?struct[ \t]+([a-zA-Z0-9_]+)/\2/s,structure names/
---regex-Rust=/^[ \t]*(pub[ \t]+)?mod[ \t]+([a-zA-Z0-9_]+)/\2/m,modules,module names/
---regex-Rust=/^[ \t]*(pub[ \t]+)?static[ \t]+([a-zA-Z0-9_]+)/\2/c,consts,static constants/
---regex-Rust=/^[ \t]*(pub[ \t]+)?trait[ \t]+([a-zA-Z0-9_]+)/\2/t,traits,traits/
---regex-Rust=/^[ \t]*(pub[ \t]+)?impl([ \t\n]+<.*>)?[ \t]+([a-zA-Z0-9_]+)/\3/i,impls,trait implementations/
---regex-Rust=/^[ \t]*macro_rules![ \t]+([a-zA-Z0-9_]+)/\1/d,macros,macro definitions/
diff --git a/rustc_deps/vendor/memchr/session.vim b/rustc_deps/vendor/memchr/session.vim
deleted file mode 100644
index 213c956..0000000
--- a/rustc_deps/vendor/memchr/session.vim
+++ /dev/null
@@ -1 +0,0 @@
-au BufWritePost *.rs silent!make ctags > /dev/null 2>&1
diff --git a/rustc_deps/vendor/mime/.cargo-checksum.json b/rustc_deps/vendor/mime/.cargo-checksum.json
index 919e1cb..568a99a 100644
--- a/rustc_deps/vendor/mime/.cargo-checksum.json
+++ b/rustc_deps/vendor/mime/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"713aa1cac091a99e295194ca0dfd6d74028edbb02a0f5f627f3d3dfdf6437ee0","Cargo.toml":"c2757b0a3b45e977f1f872603ad3cee9a029ffb9a37af5eb639a7c16c96fa3d9","LICENSE":"df9cfd06d8a44d9a671eadd39ffd97f166481da015a30f45dfd27886209c5922","README.md":"706ee5777dbfea1255359f2dd3f905f7bb89282a528c9c14e38751e5e874fd5e","src/lib.rs":"0f534df49767cdf07ee2f59db9b8aeb8ca9f552531504eef0b1bbe55f6fbd7f7"},"package":"ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"}
\ No newline at end of file
+{"files":{"Cargo.toml":"c2757b0a3b45e977f1f872603ad3cee9a029ffb9a37af5eb639a7c16c96fa3d9","LICENSE":"df9cfd06d8a44d9a671eadd39ffd97f166481da015a30f45dfd27886209c5922","README.md":"706ee5777dbfea1255359f2dd3f905f7bb89282a528c9c14e38751e5e874fd5e","src/lib.rs":"0f534df49767cdf07ee2f59db9b8aeb8ca9f552531504eef0b1bbe55f6fbd7f7"},"package":"ba626b8a6de5da682e1caa06bdb42a335aee5a84db8e5046a3e8ab17ba0a3ae0"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/mime/.travis.yml b/rustc_deps/vendor/mime/.travis.yml
deleted file mode 100644
index 8732690..0000000
--- a/rustc_deps/vendor/mime/.travis.yml
+++ /dev/null
@@ -1,3 +0,0 @@
-language: rust
-rust: beta
-
diff --git a/rustc_deps/vendor/mime_guess/.cargo-checksum.json b/rustc_deps/vendor/mime_guess/.cargo-checksum.json
index db1ca74..568f9f5 100644
--- a/rustc_deps/vendor/mime_guess/.cargo-checksum.json
+++ b/rustc_deps/vendor/mime_guess/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"74bde74b329c95e47348ce655a79c3c780629e278498ba00bcd711492faecf97","Cargo.toml":"b7fd51ba498b2c2b9a0569d674b3aa276aa1a1a3f9d9d820bcb0a182501451f4","LICENSE":"816000f9c28f7005d931c77636eb79fa7020071eb0f6e6a995515dfccd3559cb","README.md":"f1c5fe31411b7d5e2f4d55b191bd3fdf068145fde2543a18340e5bb99ac20cbc","build.rs":"73bd9b759ef6b740656f9a80e14c7d3758871007aeb4a9e8912025e9c2a12555","examples/rev_map.rs":"22dbadfa2c069a3a67bad6efe836ced3d83f76c871c82b9dc23919cbfef15441","src/lib.rs":"0488b069b77a2008b8ec71a750c4bf0cd39e14d33d7602ee485f4de1e41f0c64","src/mime_types.rs":"eb21f74dd22ce16b8e6b50fa0d0855e59460e23df291f00537da737c331cfd6c"},"package":"2d4c0961143b8efdcfa29c3ae63281601b446a4a668165454b6c90f8024954c5"}
\ No newline at end of file
+{"files":{"Cargo.toml":"b7fd51ba498b2c2b9a0569d674b3aa276aa1a1a3f9d9d820bcb0a182501451f4","LICENSE":"816000f9c28f7005d931c77636eb79fa7020071eb0f6e6a995515dfccd3559cb","README.md":"f1c5fe31411b7d5e2f4d55b191bd3fdf068145fde2543a18340e5bb99ac20cbc","build.rs":"73bd9b759ef6b740656f9a80e14c7d3758871007aeb4a9e8912025e9c2a12555","examples/rev_map.rs":"22dbadfa2c069a3a67bad6efe836ced3d83f76c871c82b9dc23919cbfef15441","src/lib.rs":"0488b069b77a2008b8ec71a750c4bf0cd39e14d33d7602ee485f4de1e41f0c64","src/mime_types.rs":"eb21f74dd22ce16b8e6b50fa0d0855e59460e23df291f00537da737c331cfd6c"},"package":"2d4c0961143b8efdcfa29c3ae63281601b446a4a668165454b6c90f8024954c5"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/mime_guess/.travis.yml b/rustc_deps/vendor/mime_guess/.travis.yml
deleted file mode 100644
index dd32adb..0000000
--- a/rustc_deps/vendor/mime_guess/.travis.yml
+++ /dev/null
@@ -1,10 +0,0 @@
-language: rust

-sudo: false

-cache: cargo

-rust:

-  - stable

-  - beta

-  - nightly

-os:

-  - linux

-  - osx

diff --git a/rustc_deps/vendor/miniz_oxide/.cargo-checksum.json b/rustc_deps/vendor/miniz_oxide/.cargo-checksum.json
index 2c60174..00937af 100644
--- a/rustc_deps/vendor/miniz_oxide/.cargo-checksum.json
+++ b/rustc_deps/vendor/miniz_oxide/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"40a911cfa8e12628f59eae6aebb3ad22a9b2a7ea82affc211c935c2ff6a501c0","Cargo.toml":"535d1254a0dc6bebfec8ecbfbf2c63157fb717fb2b0f715456ab53f5e71b8555","LICENSE":"e190940e8ad3cdd4fca962a6508ed6865d589d314b1cb055f86000e124b88d8d","Readme.md":"78fe2edfd0d8d14dbf30823ba7f5d985395606543ee7a0e97f84944176be5e57","src/deflate/buffer.rs":"e2b00cc64ffca3bfe28291a9c19589628f9c55558e37bd46756822aa472b39dd","src/deflate/core.rs":"2c9d9c3ee062924a90a8cd27f4f2d7d4606468a73d5fe26ae27ef6b64a8ec828","src/deflate/mod.rs":"8fab92afd5e7f3f722f5a4865aac45a27ebd11a8bf91980305f7f1a80bb986a2","src/inflate/core.rs":"1906ebd0cb5b703d870137926eb6bf9056ce0c8ca24c399ed84d0144e8edffe6","src/inflate/mod.rs":"31bc3fef8e6924a6af3c3e9767fb55316dab74181dd0bc2a04211debdf8b2afe","src/inflate/output_buffer.rs":"bc0b90e385a6f097f5e7269dcc1fe355f1f0123d587f74ec816d69b4bd57be03","src/lib.rs":"06abbdc6dc6ef2b70366de34de8ba372e7432d70542048f1ed0224bef839b64d","src/shared.rs":"abae3f3cc3d8e13ebb19cb79082004ec113f5ff69c917976acb10327e096ac13","tests/test.rs":"e5df402ab983a0c8cda206f8f97db67e0b28e273ab59565a1c9781e5a7d6c95e","tests/test_data/invalid_code_len_oom":"83bbc3ef852079eac34ba21d91434079d23f71da6ffd93c9fb438e3be48be0ba","tests/test_data/invalid_code_len_short":"f8b65f7327234574ec243875500d21bf29966d5cc6ba3b374fbe7dd51cd87da1","tests/test_data/issue_14.zlib":"2f8841d57ed549cdd1a037ef2f24adaa79d6df84bc71dba1af5958005a8e7fb8","tests/test_data/issue_19.deflate":"14ccf218d1c71dae13399a03f51f15e0479d820554c244959f1012d971fde196"},"package":"5ad30a47319c16cde58d0314f5d98202a80c9083b5f61178457403dfb14e509c"}
\ No newline at end of file
+{"files":{"Cargo.toml":"535d1254a0dc6bebfec8ecbfbf2c63157fb717fb2b0f715456ab53f5e71b8555","LICENSE":"e190940e8ad3cdd4fca962a6508ed6865d589d314b1cb055f86000e124b88d8d","Readme.md":"78fe2edfd0d8d14dbf30823ba7f5d985395606543ee7a0e97f84944176be5e57","src/deflate/buffer.rs":"e2b00cc64ffca3bfe28291a9c19589628f9c55558e37bd46756822aa472b39dd","src/deflate/core.rs":"2c9d9c3ee062924a90a8cd27f4f2d7d4606468a73d5fe26ae27ef6b64a8ec828","src/deflate/mod.rs":"8fab92afd5e7f3f722f5a4865aac45a27ebd11a8bf91980305f7f1a80bb986a2","src/inflate/core.rs":"1906ebd0cb5b703d870137926eb6bf9056ce0c8ca24c399ed84d0144e8edffe6","src/inflate/mod.rs":"31bc3fef8e6924a6af3c3e9767fb55316dab74181dd0bc2a04211debdf8b2afe","src/inflate/output_buffer.rs":"bc0b90e385a6f097f5e7269dcc1fe355f1f0123d587f74ec816d69b4bd57be03","src/lib.rs":"06abbdc6dc6ef2b70366de34de8ba372e7432d70542048f1ed0224bef839b64d","src/shared.rs":"abae3f3cc3d8e13ebb19cb79082004ec113f5ff69c917976acb10327e096ac13","tests/test.rs":"e5df402ab983a0c8cda206f8f97db67e0b28e273ab59565a1c9781e5a7d6c95e","tests/test_data/invalid_code_len_oom":"83bbc3ef852079eac34ba21d91434079d23f71da6ffd93c9fb438e3be48be0ba","tests/test_data/invalid_code_len_short":"f8b65f7327234574ec243875500d21bf29966d5cc6ba3b374fbe7dd51cd87da1","tests/test_data/issue_14.zlib":"2f8841d57ed549cdd1a037ef2f24adaa79d6df84bc71dba1af5958005a8e7fb8","tests/test_data/issue_19.deflate":"14ccf218d1c71dae13399a03f51f15e0479d820554c244959f1012d971fde196"},"package":"5ad30a47319c16cde58d0314f5d98202a80c9083b5f61178457403dfb14e509c"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/miniz_oxide/.cargo_vcs_info.json b/rustc_deps/vendor/miniz_oxide/.cargo_vcs_info.json
deleted file mode 100644
index 60f83e1..0000000
--- a/rustc_deps/vendor/miniz_oxide/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "e6c214efd253491ac072c2c9adba87ef5b4cd5cb"
-  }
-}
diff --git a/rustc_deps/vendor/miniz_oxide_c_api/.cargo-checksum.json b/rustc_deps/vendor/miniz_oxide_c_api/.cargo-checksum.json
index 2daf64f..60d12d8 100644
--- a/rustc_deps/vendor/miniz_oxide_c_api/.cargo-checksum.json
+++ b/rustc_deps/vendor/miniz_oxide_c_api/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".cargo_vcs_info.json":"40a911cfa8e12628f59eae6aebb3ad22a9b2a7ea82affc211c935c2ff6a501c0",".travis.yml":"0c2a693c1250a8232c6d296a1f3fbd554f4c38db829eb1c584120023e4354e44","Cargo.toml":"ccd64cc84810bd375465898b416a81d0d3560395719cf04ba7fa2a3f4244fad0","LICENSE":"e190940e8ad3cdd4fca962a6508ed6865d589d314b1cb055f86000e124b88d8d","README.md":"96858c0e7fa911f76546fa22d62e50d46a1f0f6186917cd53240cf2ec1d8568d","benches/bench.rs":"ee8f4652ebff6f6dc0aaa4622a24ba7cdb6aa1583aeded5a23506087553970e5","build.sh":"b3220dd05f7b613393dd1b4116ae09eaee0e1a024de023072c05937765015ad6","build_orig_miniz.sh":"8f1a7490752c6d222c95885121ee1cd6ba3de0d6e056c0cd959d7cb5b34fd0eb","examples/example1.c":"599c928a7afff9098ef8a6bd9f064f220d4859a57684a0f75fb5d9f2af93a83a","examples/example2.c":"1fcd0152b48cc27633baa80790a5e62af3338ff0cf4befc386d0ba030c058008","examples/example3.c":"adc613e0ea7e1b958227f6366f2c5f11b5415ff31e853932da43391dfa520241","examples/example4.c":"3bc92b0c7472c50b5186701cbec6329c13cabb2ab9c539acf092f55662635809","examples/example5.c":"cba6d29ac45e27ce0a0adbfe6e0f6048966e2765de3eda44c450542862c76a14","examples/example6.c":"1869ec509b69280657f006968b8d7bf13ce191b36588d953dee4d0cee22219b2","miniz.h":"d9c62e6d1f14da400ba924acb90696df593e01384a587bc9306df949b02fdf8f","miniz/miniz.c":"9e9639d74e98ab110897dcb027a774e0e176699a75df3a5cd8ddd57fa42e4ae5","miniz/miniz_tdef.c":"2b21aef9640a51ab13cb0201d73a15ea4520030e319e34aa530e594f64b99296","miniz/miniz_tinfl.c":"5b8f8dda0448bf24ff1ef59a644a7bcaabbeb6816cd79d5a3f25e42cd525ce3d","miniz/miniz_zip.c":"59c072b1a613c59a23c3ec5c6c40172291f07c61b2ab7ff1dfbc10de08de8a33","miniz_common.h":"87fa7aef5c11a143033251d12bbd23fe14c996d7d20f49e927e096a86ecd0255","miniz_stub/miniz.c":"4c16c2bf6b76cd0303b4ea97c1d4d8e213c4e58db06ed34a4dc9ea81fd9dd5fd","miniz_stub/miniz_tdef.c":"f310f62360e0135944806f7296f81ab0e048b125d9f336de22f66e4f7b57aa32","miniz_stub/miniz_tinfl.c":"e56d711e23fdf2f0e6abefc9a5c0f12a3a6779c58022493cb255fbaac1250147","miniz_stub/miniz_zip.c":"e3d1cc22e92d540d6e2005c33e72779b38cc638f347b4f6785cd27ac1e1c746b","miniz_tdef.h":"7fd704f55c30bb36dfd5d81f9a8de1751061ad472c5fe3dd2b3a5374655e6121","miniz_tinfl.h":"21570b0688bb840106432f24a70d24eeedd7595e37965ccf3f0e0188ca2f604b","miniz_zip.h":"a6d19a9fb619cc647c6cc287210ae8d7a50c2018e65f2b259be1c8efd68885af","performance.sh":"05605fb3f74e3e46ede94b7810982b56e34225e9f2419c144f6248885df3de17","redefine.txt":"04ba694491b181e8d5125aa3175ef49a497fe89f2ef9c9faa7d6cfb132f31701","run_fuzz.sh":"94c91a2a900d6fd6696c285bff3829908bbd7f63cd4e8caa8ded8be85161e5a2","src/build.rs":"6cceadbf99e458e11a832328e42ad025ac2fa1acfe41f9fa98952c71728208d9","src/lib.rs":"c41776e274d2f07e055b37f51083b1bf27af6dced0e03c86c20f01adea5176fe","src/lib_oxide.rs":"0e215ad5cbfb8959078edd472c61f364dd05957e0d28c3d743f798847662fbbd","src/tdef.rs":"4da73f16802011aa6a3c427d2c074a86198a828a1a191f247fc9fc20df24339b","src/tinfl.rs":"2494dbb929139ba035e147442f979afc1ae382e7e4017e9c822a608fe9184149","src/unmangle.rs":"132c66c5b0e3b463d92ee1e026c62b0fee75cdbe92e290a5f0d9403d668c9982","test.sh":"187eb19a91cd56b5cba984f9b56e56d3278578afde2a779b1800b2b5d6c14d76","tests/miniz_tester.cpp":"9d0443d575b6a398f217422041b9955597d96be7e3723a328c1c5b689b698674","tests/test.rs":"0d8536f89ac1f8008c34b215ea567a977bdae37b9b8fe9865edab53887efec41","tests/timer.cpp":"2a748c3d9ea374bd7fd224420b6611357245b8d8e5ce619821b773a390f2b348","tests/timer.h":"dd48b88a80d68410cdf6a8764cd2999989fb094ce6efb718db9c112af803749a","travis-after-success.sh":"32379ef1e9ab46c8ff57fb76d30448b08c13fd0e89a1333e4abcc0156f2b6803"},"package":"28edaef377517fd9fe3e085c37d892ce7acd1fbeab9239c5a36eec352d8a8b7e"}
\ No newline at end of file
+{"files":{"Cargo.toml":"ccd64cc84810bd375465898b416a81d0d3560395719cf04ba7fa2a3f4244fad0","LICENSE":"e190940e8ad3cdd4fca962a6508ed6865d589d314b1cb055f86000e124b88d8d","README.md":"96858c0e7fa911f76546fa22d62e50d46a1f0f6186917cd53240cf2ec1d8568d","benches/bench.rs":"ee8f4652ebff6f6dc0aaa4622a24ba7cdb6aa1583aeded5a23506087553970e5","build.sh":"b3220dd05f7b613393dd1b4116ae09eaee0e1a024de023072c05937765015ad6","build_orig_miniz.sh":"8f1a7490752c6d222c95885121ee1cd6ba3de0d6e056c0cd959d7cb5b34fd0eb","examples/example1.c":"599c928a7afff9098ef8a6bd9f064f220d4859a57684a0f75fb5d9f2af93a83a","examples/example2.c":"1fcd0152b48cc27633baa80790a5e62af3338ff0cf4befc386d0ba030c058008","examples/example3.c":"adc613e0ea7e1b958227f6366f2c5f11b5415ff31e853932da43391dfa520241","examples/example4.c":"3bc92b0c7472c50b5186701cbec6329c13cabb2ab9c539acf092f55662635809","examples/example5.c":"cba6d29ac45e27ce0a0adbfe6e0f6048966e2765de3eda44c450542862c76a14","examples/example6.c":"1869ec509b69280657f006968b8d7bf13ce191b36588d953dee4d0cee22219b2","miniz.h":"d9c62e6d1f14da400ba924acb90696df593e01384a587bc9306df949b02fdf8f","miniz/miniz.c":"9e9639d74e98ab110897dcb027a774e0e176699a75df3a5cd8ddd57fa42e4ae5","miniz/miniz_tdef.c":"2b21aef9640a51ab13cb0201d73a15ea4520030e319e34aa530e594f64b99296","miniz/miniz_tinfl.c":"5b8f8dda0448bf24ff1ef59a644a7bcaabbeb6816cd79d5a3f25e42cd525ce3d","miniz/miniz_zip.c":"59c072b1a613c59a23c3ec5c6c40172291f07c61b2ab7ff1dfbc10de08de8a33","miniz_common.h":"87fa7aef5c11a143033251d12bbd23fe14c996d7d20f49e927e096a86ecd0255","miniz_stub/miniz.c":"4c16c2bf6b76cd0303b4ea97c1d4d8e213c4e58db06ed34a4dc9ea81fd9dd5fd","miniz_stub/miniz_tdef.c":"f310f62360e0135944806f7296f81ab0e048b125d9f336de22f66e4f7b57aa32","miniz_stub/miniz_tinfl.c":"e56d711e23fdf2f0e6abefc9a5c0f12a3a6779c58022493cb255fbaac1250147","miniz_stub/miniz_zip.c":"e3d1cc22e92d540d6e2005c33e72779b38cc638f347b4f6785cd27ac1e1c746b","miniz_tdef.h":"7fd704f55c30bb36dfd5d81f9a8de1751061ad472c5fe3dd2b3a5374655e6121","miniz_tinfl.h":"21570b0688bb840106432f24a70d24eeedd7595e37965ccf3f0e0188ca2f604b","miniz_zip.h":"a6d19a9fb619cc647c6cc287210ae8d7a50c2018e65f2b259be1c8efd68885af","performance.sh":"05605fb3f74e3e46ede94b7810982b56e34225e9f2419c144f6248885df3de17","redefine.txt":"04ba694491b181e8d5125aa3175ef49a497fe89f2ef9c9faa7d6cfb132f31701","run_fuzz.sh":"94c91a2a900d6fd6696c285bff3829908bbd7f63cd4e8caa8ded8be85161e5a2","src/build.rs":"6cceadbf99e458e11a832328e42ad025ac2fa1acfe41f9fa98952c71728208d9","src/lib.rs":"c41776e274d2f07e055b37f51083b1bf27af6dced0e03c86c20f01adea5176fe","src/lib_oxide.rs":"0e215ad5cbfb8959078edd472c61f364dd05957e0d28c3d743f798847662fbbd","src/tdef.rs":"4da73f16802011aa6a3c427d2c074a86198a828a1a191f247fc9fc20df24339b","src/tinfl.rs":"2494dbb929139ba035e147442f979afc1ae382e7e4017e9c822a608fe9184149","src/unmangle.rs":"132c66c5b0e3b463d92ee1e026c62b0fee75cdbe92e290a5f0d9403d668c9982","test.sh":"187eb19a91cd56b5cba984f9b56e56d3278578afde2a779b1800b2b5d6c14d76","tests/miniz_tester.cpp":"9d0443d575b6a398f217422041b9955597d96be7e3723a328c1c5b689b698674","tests/test.rs":"0d8536f89ac1f8008c34b215ea567a977bdae37b9b8fe9865edab53887efec41","tests/timer.cpp":"2a748c3d9ea374bd7fd224420b6611357245b8d8e5ce619821b773a390f2b348","tests/timer.h":"dd48b88a80d68410cdf6a8764cd2999989fb094ce6efb718db9c112af803749a","travis-after-success.sh":"32379ef1e9ab46c8ff57fb76d30448b08c13fd0e89a1333e4abcc0156f2b6803"},"package":"28edaef377517fd9fe3e085c37d892ce7acd1fbeab9239c5a36eec352d8a8b7e"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/miniz_oxide_c_api/.cargo_vcs_info.json b/rustc_deps/vendor/miniz_oxide_c_api/.cargo_vcs_info.json
deleted file mode 100644
index 60f83e1..0000000
--- a/rustc_deps/vendor/miniz_oxide_c_api/.cargo_vcs_info.json
+++ /dev/null
@@ -1,5 +0,0 @@
-{
-  "git": {
-    "sha1": "e6c214efd253491ac072c2c9adba87ef5b4cd5cb"
-  }
-}
diff --git a/rustc_deps/vendor/miniz_oxide_c_api/.travis.yml b/rustc_deps/vendor/miniz_oxide_c_api/.travis.yml
deleted file mode 100644
index ded4c98..0000000
--- a/rustc_deps/vendor/miniz_oxide_c_api/.travis.yml
+++ /dev/null
@@ -1,18 +0,0 @@
-sudo: enabled
-language:
-  - rust
-  - cpp
-compiler:
-  - gcc
-rust:
-  - stable
-  - nightly
-before_install:
-  - sudo apt-get update
-  - sudo apt-get install valgrind
-script:
-  - cargo test
-  - cargo test -p miniz_oxide
-  - ./test.sh
-after_success:
-  - ./travis-after-success.sh
diff --git a/rustc_deps/vendor/multipart/.cargo-checksum.json b/rustc_deps/vendor/multipart/.cargo-checksum.json
index 4190d37..47b1718 100644
--- a/rustc_deps/vendor/multipart/.cargo-checksum.json
+++ b/rustc_deps/vendor/multipart/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"daffd4e01be7273e7a308ca476bf6ea76aa49215db5f3c50dd3b1e9616881fe5","Cargo.toml":"ed672d728ae0a4f81fedafd7d458b3320724baef61b26d06c067f84867f97156","LICENSE":"01bec9735cfa1b63c23626da1201dde1ab7afd6a43e83fad3a40a27bbf89b19d","LICENSE-APACHE":"7cfd738c53d61c79f07e348f622bf7707c9084237054d37fbe07788a75f5881c","LICENSE-MIT":"64e1c5f067ee2d8c0ee8abd751e57275d4e97e4f7c05699bc23f5005a9c53043","README.md":"23ce2b66a090b5d3c00b658811a3ed9fb4f8fad5562fdd2e0815b54da98275eb","examples/README.md":"271a17c60165e1886ecbc9f9a7d51ae78128ba59bec980250bded5a8bcaec66e","examples/hyper_client.rs":"48ff35f0d9bbd881f826733d8bbf6bee39dac287dfb0aff3de143e9cdda49a4e","examples/hyper_reqbuilder.rs":"06c78f1f14522445c1cfe7360b883c00a48fc8a2ed45b58a7070923b84f81c7a","examples/hyper_server.rs":"e7e32c274113eeca259812ad15628b1142341518393bdd9494642652cc306dab","examples/iron.rs":"6eed42b670b3b46609ee7838634a77a2f9d2062f0ac7d4a9ef220adcf0c41913","examples/iron_intercept.rs":"15283d0ea5070e01b6f9e1daaf1d05de3cac7b7a412296c6387565d20d322845","examples/nickel.rs":"e42840aedcbb17d435cd197572f5bcc08997afd0e1a35138bc3eb0430235373f","examples/tiny_http.rs":"3fcedab3ed26cb8b58adbcc243c7eedd9c89e72ca946aea7f76b078f55f17885","fuzz_server.sh":"e20ba929718a50c3a9b3996ae478d371ee0f7c3113f899934c3c834724456db2","lorem_ipsum.txt":"abba5a928dd1e4ac2f405b357bf33bd51a9a7b67709cfc1efeb5cd94d7e9f6b8","src/bin/test_multipart.rs":"e5853caa1cd253ea2b55edffc245c4067f7cb8e16dd9a7b67efce1b7e90d25b4","src/client/hyper.rs":"51ccf884128957dc9d24c70e5163010d05afe57044f6bd43c9c06a87d05029b4","src/client/lazy.rs":"0a0cf3737b4c256430038dd0fbd28466135302032b42f855fbaa58f26d306704","src/client/mod.rs":"feb9384b54b4c1d509cd12e082c34f76daf52b54bf3c65f1ee66200a7f9c5d55","src/client/sized.rs":"bdaa6a89004f0663566b1d52f71cb5d85b54979c82f9c254f44865aeb3e0b3a8","src/lib.rs":"0d1a94ae0375f8145d1c66b764b6941777307b548ae1e272af3f98ec34deccbd","src/local_test.rs":"79aeef0aaeec8cc7d988beb6af38e874bf2a792d4299ffadfd2f49390aa2e0b3","src/mock.rs":"586ae254fc1ed2ac2b2c227f5663330b1c33859c354a92ffb29e40cbf6c8034e","src/server/boundary.rs":"ffd60513b6f5951f6a8e8bb720f696dd3f6a49a50c8e8a08f9a58a3eca9ca98f","src/server/field.rs":"6406fbeebb761369450f47577501795ee65e92595e7b9c56bd1a9150a2a24192","src/server/hyper.rs":"a8642f16e109eb172483b4c84026aa16d80706f09b451dcf42371c187347540f","src/server/iron.rs":"f05c9ed2b09045eeee3f690bb39faf1441ef2e01b1bfe62b765b33d5bb68147f","src/server/mod.rs":"a13f678bbf85ac0a21ab2cbf8b867ec6f9380d25b46741b3960636fbf5dc8467","src/server/save.rs":"d081203bf0335410abbf0ba7366b6e02883ed1f29b032cefc18f259a9213a82a","src/server/tiny_http.rs":"d0eeb763c126046ba8c6160ebc6ec9fa3b74e70481e429b09d7dc5aec06d8395"},"package":"92f54eb45230c3aa20864ccf0c277eeaeadcf5e437e91731db498dbf7fbe0ec6"}
\ No newline at end of file
+{"files":{"Cargo.toml":"ed672d728ae0a4f81fedafd7d458b3320724baef61b26d06c067f84867f97156","LICENSE":"01bec9735cfa1b63c23626da1201dde1ab7afd6a43e83fad3a40a27bbf89b19d","LICENSE-APACHE":"7cfd738c53d61c79f07e348f622bf7707c9084237054d37fbe07788a75f5881c","LICENSE-MIT":"64e1c5f067ee2d8c0ee8abd751e57275d4e97e4f7c05699bc23f5005a9c53043","README.md":"23ce2b66a090b5d3c00b658811a3ed9fb4f8fad5562fdd2e0815b54da98275eb","examples/README.md":"271a17c60165e1886ecbc9f9a7d51ae78128ba59bec980250bded5a8bcaec66e","examples/hyper_client.rs":"48ff35f0d9bbd881f826733d8bbf6bee39dac287dfb0aff3de143e9cdda49a4e","examples/hyper_reqbuilder.rs":"06c78f1f14522445c1cfe7360b883c00a48fc8a2ed45b58a7070923b84f81c7a","examples/hyper_server.rs":"e7e32c274113eeca259812ad15628b1142341518393bdd9494642652cc306dab","examples/iron.rs":"6eed42b670b3b46609ee7838634a77a2f9d2062f0ac7d4a9ef220adcf0c41913","examples/iron_intercept.rs":"15283d0ea5070e01b6f9e1daaf1d05de3cac7b7a412296c6387565d20d322845","examples/nickel.rs":"e42840aedcbb17d435cd197572f5bcc08997afd0e1a35138bc3eb0430235373f","examples/tiny_http.rs":"3fcedab3ed26cb8b58adbcc243c7eedd9c89e72ca946aea7f76b078f55f17885","fuzz_server.sh":"e20ba929718a50c3a9b3996ae478d371ee0f7c3113f899934c3c834724456db2","lorem_ipsum.txt":"abba5a928dd1e4ac2f405b357bf33bd51a9a7b67709cfc1efeb5cd94d7e9f6b8","src/bin/test_multipart.rs":"e5853caa1cd253ea2b55edffc245c4067f7cb8e16dd9a7b67efce1b7e90d25b4","src/client/hyper.rs":"51ccf884128957dc9d24c70e5163010d05afe57044f6bd43c9c06a87d05029b4","src/client/lazy.rs":"0a0cf3737b4c256430038dd0fbd28466135302032b42f855fbaa58f26d306704","src/client/mod.rs":"feb9384b54b4c1d509cd12e082c34f76daf52b54bf3c65f1ee66200a7f9c5d55","src/client/sized.rs":"bdaa6a89004f0663566b1d52f71cb5d85b54979c82f9c254f44865aeb3e0b3a8","src/lib.rs":"0d1a94ae0375f8145d1c66b764b6941777307b548ae1e272af3f98ec34deccbd","src/local_test.rs":"79aeef0aaeec8cc7d988beb6af38e874bf2a792d4299ffadfd2f49390aa2e0b3","src/mock.rs":"586ae254fc1ed2ac2b2c227f5663330b1c33859c354a92ffb29e40cbf6c8034e","src/server/boundary.rs":"ffd60513b6f5951f6a8e8bb720f696dd3f6a49a50c8e8a08f9a58a3eca9ca98f","src/server/field.rs":"6406fbeebb761369450f47577501795ee65e92595e7b9c56bd1a9150a2a24192","src/server/hyper.rs":"a8642f16e109eb172483b4c84026aa16d80706f09b451dcf42371c187347540f","src/server/iron.rs":"f05c9ed2b09045eeee3f690bb39faf1441ef2e01b1bfe62b765b33d5bb68147f","src/server/mod.rs":"a13f678bbf85ac0a21ab2cbf8b867ec6f9380d25b46741b3960636fbf5dc8467","src/server/save.rs":"d081203bf0335410abbf0ba7366b6e02883ed1f29b032cefc18f259a9213a82a","src/server/tiny_http.rs":"d0eeb763c126046ba8c6160ebc6ec9fa3b74e70481e429b09d7dc5aec06d8395"},"package":"92f54eb45230c3aa20864ccf0c277eeaeadcf5e437e91731db498dbf7fbe0ec6"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/multipart/.travis.yml b/rustc_deps/vendor/multipart/.travis.yml
deleted file mode 100644
index 8506b4d..0000000
--- a/rustc_deps/vendor/multipart/.travis.yml
+++ /dev/null
@@ -1,27 +0,0 @@
-language: rust

-cache: cargo

-sudo: false

-branches:

-  except:

-  - fuzzing

-rust:

-  - 1.17.0

-  - stable

-  - beta

-  - nightly

-os:

-  - linux

-  # openssl is broken on OS X again

-  # - osx

-env:

-  - RUST_LOG=multipart=info RUST_BACKTRACE=1

-script:

-  - if [ ${TRAVIS_RUST_VERSION} = "nightly" ]; then

-      cargo build --verbose --features "nightly";

-      cargo test --verbose --features "nightly";

-      cargo doc --verbose --features "nightly";

-    fi

-  - cargo build --verbose;

-  - cargo test --verbose;

-  - cargo doc --verbose;

-  - (cd nickel && cargo test -v)

diff --git a/rustc_deps/vendor/net2/.cargo-checksum.json b/rustc_deps/vendor/net2/.cargo-checksum.json
index e1e3565..247941b 100644
--- a/rustc_deps/vendor/net2/.cargo-checksum.json
+++ b/rustc_deps/vendor/net2/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"662ec1f762f251e9bee762b82386240948c2973d2a985cf5a6a765e7c28c9590","Cargo.toml":"c18ec02a8566f054a27e18df2ac53856a74864fad952a41abda096c91caae106","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"c13834771aa1973a02dfbf99c282850ea1d6974269ebe9081cd2853a5ac59c93","appveyor.yml":"6e3173d907ccfa65e289c99042cb29d4a23b9d1f4ec5bf7afa6c0d65365bab54","src/ext.rs":"b9300ae246e9ac451889f146ece8bb6ed4a95482edf806373de5af759cd09360","src/lib.rs":"8d8a171090b75e86e7505921460fba072db0077942edd11c4a3c8a70e9164eef","src/socket.rs":"a033d04061d95c4fea3eb78ce25f147d3b669034681e4119d00bc78b817a8096","src/sys/redox/impls.rs":"90059116f0514bd44dbf282a3e8d7b192c99e1a78a34ebacb00f2d325ca0f8b0","src/sys/redox/mod.rs":"137013d409fd174fed0ceb3eceb2c17d15f34a3af70c7d237c06dd3a144affc1","src/sys/unix/impls.rs":"05f123226e8fe7559317d50864021650b2455d25d01a9aff1c65c01ae26cf4ef","src/sys/unix/mod.rs":"bb28a7275eac021132b01206d134802902d616c0be3e82100b45a3ff1eba4c02","src/sys/windows/impls.rs":"bee70b7cd45055c4eaa1967f7aad7ec46639de458c71ed6f3e97a2f7b2c49281","src/sys/windows/mod.rs":"0706f1587af0f693f75e8597e4196075a3f673c89727dd865447da306974bf35","src/tcp.rs":"0bebf5cca75714151de30c8f2d7697ca519c57da065e93ba81796bce04673f8d","src/udp.rs":"8af5a55a4ae5e4120ffe18dcc4dc24072e18da34bf3591a02b18653e5d3e8ac8","src/unix.rs":"fe9cdbd75ef2e1fafc128d1abb5f32500eaf0b674aa618d837e06ab1d0dc6687","src/utils.rs":"d31de5333a6fa2f5c99b64cc937be596888d9863264632e6bc6b36b30197fa5b","tests/all.rs":"12cb4616c842f655ece1b477664d41821f95b3051053da641b1d85026ee18274"},"package":"42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"}
\ No newline at end of file
+{"files":{"Cargo.toml":"c18ec02a8566f054a27e18df2ac53856a74864fad952a41abda096c91caae106","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"c13834771aa1973a02dfbf99c282850ea1d6974269ebe9081cd2853a5ac59c93","appveyor.yml":"6e3173d907ccfa65e289c99042cb29d4a23b9d1f4ec5bf7afa6c0d65365bab54","src/ext.rs":"b9300ae246e9ac451889f146ece8bb6ed4a95482edf806373de5af759cd09360","src/lib.rs":"8d8a171090b75e86e7505921460fba072db0077942edd11c4a3c8a70e9164eef","src/socket.rs":"a033d04061d95c4fea3eb78ce25f147d3b669034681e4119d00bc78b817a8096","src/sys/redox/impls.rs":"90059116f0514bd44dbf282a3e8d7b192c99e1a78a34ebacb00f2d325ca0f8b0","src/sys/redox/mod.rs":"137013d409fd174fed0ceb3eceb2c17d15f34a3af70c7d237c06dd3a144affc1","src/sys/unix/impls.rs":"05f123226e8fe7559317d50864021650b2455d25d01a9aff1c65c01ae26cf4ef","src/sys/unix/mod.rs":"bb28a7275eac021132b01206d134802902d616c0be3e82100b45a3ff1eba4c02","src/sys/windows/impls.rs":"bee70b7cd45055c4eaa1967f7aad7ec46639de458c71ed6f3e97a2f7b2c49281","src/sys/windows/mod.rs":"0706f1587af0f693f75e8597e4196075a3f673c89727dd865447da306974bf35","src/tcp.rs":"0bebf5cca75714151de30c8f2d7697ca519c57da065e93ba81796bce04673f8d","src/udp.rs":"8af5a55a4ae5e4120ffe18dcc4dc24072e18da34bf3591a02b18653e5d3e8ac8","src/unix.rs":"fe9cdbd75ef2e1fafc128d1abb5f32500eaf0b674aa618d837e06ab1d0dc6687","src/utils.rs":"d31de5333a6fa2f5c99b64cc937be596888d9863264632e6bc6b36b30197fa5b","tests/all.rs":"12cb4616c842f655ece1b477664d41821f95b3051053da641b1d85026ee18274"},"package":"42550d9fb7b6684a6d404d9fa7250c2eb2646df731d1c06afc06dcee9e1bcf88"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/net2/.travis.yml b/rustc_deps/vendor/net2/.travis.yml
deleted file mode 100644
index b21f272..0000000
--- a/rustc_deps/vendor/net2/.travis.yml
+++ /dev/null
@@ -1,32 +0,0 @@
-language: rust
-sudo: false
-
-matrix:
-  include:
-    - rust: 1.21.0
-    - rust: stable
-    - os: osx
-    - rust: beta
-    - rust: nightly
-      script:
-        - cargo test
-        - cargo test --feature snightly
-
-    - rust: nightly
-      before_script:
-        - pip install 'travis-cargo<0.2' --user && export PATH=$HOME/.local/bin:$PATH
-      script:
-        - cargo doc --no-deps --all-features
-      after_success:
-        - travis-cargo doc-upload
-
-script:
-  - cargo test
-
-env:
-  global:
-    secure: "n7C4SSdi9Q1WcPxc9BKQi/vhPhhxCfK/ljqG0l8PpNhkJ1BzFgb/0O4zA2W1/JzHxp0VB7rGwRCTSZkePvH1ycZuNtIezFc2HktElpRGwmo8X2OHp2+GLkTKozjhV0qZho+XoQnB0zgZRAdTq+MSN2EpTUKsaNvZwrTK90MprUPKU06Hvq93oEWmDh0jyKee0LlMezS6ihTgNk43zIa6bNumIWoaUM9ePnN7IvKSnoiynKjrBU52GPF5cWKih35mTXNxXW89Ht2h1NhIAHwmUpNfyOsBb2LOfvathVitfqk81R6+1qWzFyWSHdFoDAM0HHs8sySFK3P2YVcAp4tNIBw29oAtCpSGK6XeDyxmEU9VAq2H7DzEaBnkZM5A4oNnJWsValBmY+8m21OwV/XRed+eiqg5WUfnjeEoBn/5BJxMsc+kkVztS1Yos1meHZazTIaSpICxJ8fieHnzTOKD3wKgHwXSQaCAQHAErM301DRlChkXj61txDCmLVrU4qVRSMrAQQFPUBeploNaQtvCr/JI7huOhw5A6DphnGH8bbNivwATuUnbvQRJF+VGU3yOkJieJAQzArjGQ1A+qMds+DKlfFH/mPMxQcKv7bEE7cTZ3DY8ZzJfMzsh6YIa/YP0hpDZ5z4tJaeEXRyNVPEAwMGk4pCITP949WaTs97XOpM="
-
-notifications:
-  email:
-    on_success: never
diff --git a/rustc_deps/vendor/num-bigint/.cargo-checksum.json b/rustc_deps/vendor/num-bigint/.cargo-checksum.json
index 25a804c..7a2b60d 100644
--- a/rustc_deps/vendor/num-bigint/.cargo-checksum.json
+++ b/rustc_deps/vendor/num-bigint/.cargo-checksum.json
@@ -1 +1 @@
-{"files":{".travis.yml":"1bb4c0265fc576e9ac9b82c2c73ce4d3a4b1ed2c5a6eb13adbe1b6fb429c5dc7","Cargo.toml":"7988894b2d5f0afd66107f4cfea9dd110ceb7d8ced7b70df5a114b3a252707a3","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"924df0f3e866e2ef3c7f66bc4380ef69ae6a2b1c9e48486b3d3d917b4973493a","RELEASES.md":"4370754ab12c9dcbfc39099563c2960a746c57bb831a1cefffe49eb2121d6d25","benches/bigint.rs":"e62ad970f1cf33c44a5a6ac6ac035059c4bd8416bbad1ddf3d8cfbef4f80b9a0","benches/factorial.rs":"67e50bca067764c5d9dfd2e2bbb75835087437c509b73d6206bbe5c6f797f469","benches/gcd.rs":"4d4ec3ef7bfc7a04867713f68d91f595030c188af6f5144224471d64b8bc3cab","benches/shootout-pidigits.rs":"a071146410ed87dd5ccc8ec1d6fd84e454146a8b067ec0825f397400c9f707e3","bors.toml":"1c81ede536a37edd30fe4e622ff0531b25372403ac9475a5d6c50f14156565a2","build.rs":"16de2aa57e754fc1526d0400b5d87a3f771296705fca54601aa598b6f74ded8f","ci/rustup.sh":"c976bb2756da3876363b01fdbf06c13de20df421e5add45e4017c4df42ed06a6","ci/test_full.sh":"d74371a12cc8d0c6281e00d25735db3eb9c93355c416137166327b807ed69b36","src/algorithms.rs":"2915bd0dd3b5d7c2c191745adc0ee6c4f164d95c30fad7ab416447ef643d4fd4","src/bigint.rs":"b9b4bed29963e374e357b5887cea31a5d4f9d1831a537c8d8823ed72424a5b7b","src/bigrand.rs":"3cad764fe5c6c57f69c0c4f43d814462173165ff2fa62f7e7e0b40cedcb58407","src/biguint.rs":"ab7887c8f65b7163e4fc53fd7a93339b8417e45993983d17d67669199bf2d008","src/lib.rs":"fd31a0a63605b1f7bbc5841fe2adeba87932ff6ad52f3abc114506248cfa0541","src/macros.rs":"1a5f11f5718e70258d53f95586c6f1acb4a14a47438a10824682239f6e134927","src/monty.rs":"408d3871716537ab8726b5da0deb81dcb8782a73500f0c75039be552a5b50414","tests/bigint.rs":"ce12d14a1dd6b7b78da5cc8299e8ca10c955d08f51603937b710db258c3a1b1f","tests/bigint_bitwise.rs":"1599e7a49b5976379b7821672c40c21608d97f7593f5b90ad981c918030b934c","tests/bigint_scalar.rs":"41e87c72f9470f4bc11f38e3977607c577dbaf482ab7f45fe37484b789055ade","tests/biguint.rs":"a1ecd0f34a4650dbc570c69eeae0777b45bb2681bf7ae92285b02011fbfda409","tests/biguint_scalar.rs":"9fc6be5f32d38cc415b2f0a6fbb7e572fe0676fa67f08fcbcdb9396fd1c43205","tests/consts/mod.rs":"b52b9fe2d6d6d0d36c9cc10291750de17bb23f16952fa379b63da78798d28899","tests/macros/mod.rs":"2c453dabc9ef4686cb2627d5982e0aeb380db906d279374945fb5c8463b80e77","tests/modpow.rs":"81c5e53ff27a9bc1b7ef0fd5375c408cf8621b40f0d36a4cc30b4df9656187d8","tests/rand.rs":"a367ab47b059476141def0181f154623fb161732e00eddd3e8371de7b7fd11e2","tests/serde.rs":"79d7a0347207b3a3666af67d2ed97fa34f2922732121a3cb8f5b9f990846acfa","tests/torture.rs":"7018aeec801739f3c97b073d16d53a50b68991a59f10be0eb0df150fc5f56991"},"package":"3eceac7784c5dc97c2d6edf30259b4e153e6e2b42b3c85e9a6e9f45d06caef6e"}
\ No newline at end of file
+{"files":{"Cargo.toml":"344d4700345c4beb92638807e921a903fc07b8c35b4c6ee8023dd5998acd920c","LICENSE-APACHE":"a60eea817514531668d7e00765731449fe14d059d3249e0bc93b36de45f759f2","LICENSE-MIT":"6485b8ed310d3f0340bf1ad1f47645069ce4069dcc6bb46c7d5c6faf41de1fdb","README.md":"71c60a2b9f01e4a9a271050b07ee1c14c84ee335cd37a22b4ef5796e48064868","RELEASES.md":"cdb34404f7e1dc878d8e8776b93b611c88ebba354558e976dd095ff60d2a24cf","benches/bigint.rs":"1b6e179d6f49ac63156ba9bf0df2218bd0477a2b36e07e32a2419a2ae09febe9","benches/factorial.rs":"d536f5584987847f10321b94175a0d8fd2beb14b7c814ec28eef1f96ca081fbe","benches/gcd.rs":"7ec5ce7174e1d31bd08ccc5670f5a32a5c084f258d7980cd6d02e0a8bb5562c4","benches/shootout-pidigits.rs":"5402b0ccf59024e76d5c86d07eb30139ea7ad13db28a89a40c305ea0f2d202f4","bors.toml":"1c81ede536a37edd30fe4e622ff0531b25372403ac9475a5d6c50f14156565a2","build.rs":"16de2aa57e754fc1526d0400b5d87a3f771296705fca54601aa598b6f74ded8f","ci/rustup.sh":"c976bb2756da3876363b01fdbf06c13de20df421e5add45e4017c4df42ed06a6","ci/test_full.sh":"965bb7446d8739592e4a990adf6df2bfd75b073b8951c6c1e4b741af70b2bc6b","src/algorithms.rs":"bba3c5778617340de9ea1f59c1c888b875be32e0c85f971dddadc1fe15eb4e3c","src/bigint.rs":"59a7be19817241ab987144d324638418dd74359e7234112a125dd2f10503c865","src/bigrand.rs":"d2f72b8833f367dd8990b4b026f302d838144c5a4de942135d39a3a9932f137d","src/biguint.rs":"fc06fb5ad8d738d5e700cb6aff374d85bb64f3880af52c60889819b48ce85889","src/lib.rs":"247b218a43cc45231b4a67035320cc1051f8192a7589977af70523ca4fa97371","src/macros.rs":"cba8549abeefdc999706ea87072b983033247099a6862b23d0022e70ef252996","src/monty.rs":"1732a7b2406068f967325dae0056435b0f152c610d2711396571b8b2ef42f597","tests/bigint.rs":"beca80ccfaa147f1416f0969271dd30186159aca0e26e21bfaf28db070dff2c0","tests/bigint_bitwise.rs":"dc9436c8f200f2b0ac08cefb23bb8e39c4e688e9026a506a678416c3d573128b","tests/bigint_scalar.rs":"aa176ed102cafd425a215a93460806914d8f3ac288c98ec3e56772fa17379838","tests/biguint.rs":"04464c4475f55dd0d8924a24eaf6226a278b6c815b739534fb97ec6b3b43d992","tests/biguint_scalar.rs":"498b6f2562c2f4a730ac4caebac3bb6650dee3795b9dee3b096cd8f030644cef","tests/consts/mod.rs":"f9ea5f40733e2f5f432803d830be9db929d91e5e5efd8510b07c6ced2fe554be","tests/macros/mod.rs":"2789b680dd14a770d5ceef430018be0ada85098d69e218c61c17214084c4f763","tests/modpow.rs":"f14cdea11e355a371b314cc866dfa13281a3226706ab2cf01c1485273afde300","tests/rand.rs":"08370135bd78432660cfcd708a9ea852022d555bc92c1f3c482fabd17faa64a0","tests/roots.rs":"ba2679e1205e908f88adbb824f887842814c7c8e80ddf5dc78734443971bf58d","tests/serde.rs":"79d7a0347207b3a3666af67d2ed97fa34f2922732121a3cb8f5b9f990846acfa","tests/torture.rs":"9fe4897580c0ebe2b7062f5b0b890b4b03510daa45c9236f0edba7144f9eb6f8"},"package":"10b8423ea72ec64751198856a853e07b37087cfc9b53a87ecb19bff67b6d1320"}
\ No newline at end of file
diff --git a/rustc_deps/vendor/num-bigint/.travis.yml b/rustc_deps/vendor/num-bigint/.travis.yml
deleted file mode 100644
index 9539d57..0000000
--- a/rustc_deps/vendor/num-bigint/.travis.yml
+++ /dev/null
@@ -1,21 +0,0 @@
-language: rust
-rust:
-  - 1.15.0
-  - 1.22.0
-  - 1.26.0
-  - stable
-  - beta
-  - nightly
-sudo: false
-script:
-  - cargo build --verbose
-  - ./ci/test_full.sh
-notifications:
-  email:
-    on_success: never
-branches:
-  only:
-    - master
-    - next
-    - staging
-    - trying
diff --git a/rustc_deps/vendor/num-bigint/Cargo.toml b/rustc_deps/vendor/num-bigint/Cargo.toml
index e573c40..8e97c11 100644
--- a/rustc_deps/vendor/num-bigint/Cargo.toml
+++ b/rustc_deps/vendor/num-bigint/Cargo.toml
@@ -12,7 +12,7 @@
 
 [package]
 name = "num-bigint"
-version = "0.2.0"
+version = "0.2.1"
 authors = ["The Rust Project Developers"]
 build = "build.rs"
 description = "Big integer implementation for Rust"
@@ -39,7 +39,7 @@
 name = "shootout-pidigits"
 harness = false
 [dependencies.num-integer]
-version = "0.1.38"
+version = "0.1.39"
 default-features = false
 
 [dependencies.num-traits]
diff --git a/rustc_deps/vendor/num-bigint/README.md b/rustc_deps/vendor/num-bigint/README.md
index 44a1eef..8a6f573 100644
--- a/rustc_deps/vendor/num-bigint/README.md
+++ b/rustc_deps/vendor/num-bigint/README.md
@@ -53,7 +53,7 @@
 | [`ramp`]         | Apache-2.0     | nightly   | rust and inline assembly |
 | [`rug`]          | LGPL-3.0+      | 1.18      | bundles [GMP] via [`gmp-mpfr-sys`] |
 | [`rust-gmp`]     | MIT            | stable?   | links to [GMP] |
-| [`apint`]        | MIT/Apache-2.0 | nightly   | pure rust (unfinished) |
+| [`apint`]        | MIT/Apache-2.0 | 1.26      | pure rust (unfinished) |
 
 [GMP]: https://gmplib.org/
 [`gmp-mpfr-sys`]: https://crates.io/crates/gmp-mpfr-sys
diff --git a/rustc_deps/vendor/num-bigint/RELEASES.md b/rustc_deps/vendor/num-bigint/RELEASES.md
index 80a6cf5..546d61d 100644
--- a/rustc_deps/vendor/num-bigint/RELEASES.md
+++ b/rustc_deps/vendor/num-bigint/RELEASES.md
@@ -1,4 +1,23 @@
-# Release 0.2.0
+# Release 0.2.1 (2018-11-02)
+
+- [`RandBigInt` now uses `Rng::fill_bytes`][53] to improve performance, instead
+  of repeated `gen::<u32>` calls.  The also affects the implementations of the
+  other `rand` traits.  This may potentially change the values produced by some
+  seeded RNGs on previous versions, but the values were tested to be stable
+  with `ChaChaRng`, `IsaacRng`, and `XorShiftRng`.
+- [`BigInt` and `BigUint` now implement `num_integer::Roots`][56].
+- [`BigInt` and `BigUint` now implement `num_traits::Pow`][54].
+- [`BigInt` and `BigUint` now implement operators with 128-bit integers][64].
+
+**Contributors**: @cuviper, @dignifiedquire, @mancabizjak, @Robbepop,
+@TheIronBorn, @thomwiggers
+
+[53]: https://github.com/rust-num/num-bigint/pull/53
+[54]: https://github.com/rust-num/num-bigint/pull/54
+[56]: https://github.com/rust-num/num-bigint/pull/56
+[64]: https://github.com/rust-num/num-bigint/pull/64
+
+# Release 0.2.0 (2018-05-25)
 
 ### Enhancements
 
@@ -47,7 +66,7 @@
 [48]: https://github.com/rust-num/num-bigint/pull/48
 [49]: https://github.com/rust-num/num-bigint/pull/49
 
-# Release 0.1.44
+# Release 0.1.44 (2018-05-14)
 
 - [Division with single-digit divisors is now much faster.][42]
 - The README now compares [`ramp`, `rug`, `rust-gmp`][20], and [`apint`][21].
@@ -58,7 +77,7 @@
 [21]: https://github.com/rust-num/num-bigint/pull/21
 [42]: https://github.com/rust-num/num-bigint/pull/42
 
-# Release 0.1.43
+# Release 0.1.43 (2018-02-08)
 
 - [The new `BigInt::modpow`][18] performs signed modular exponentiation, using
   the existing `BigUint::modpow` and rounding negatives similar to `mod_floor`.
@@ -68,7 +87,7 @@
 [18]: https://github.com/rust-num/num-bigint/pull/18
 
 
-# Release 0.1.42
+# Release 0.1.42 (2018-02-07)
 
 - [num-bigint now has its own source repository][num-356] at [rust-num/num-bigint][home].
 - [`lcm` now avoids creating a large intermediate product][num-350].
diff --git a/rustc_deps/vendor/num-bigint/benches/bigint.rs b/rustc_deps/vendor/num-bigint/benches/bigint.rs
index 4c8ec23..a043e16 100644
--- a/rustc_deps/vendor/num-bigint/benches/bigint.rs
+++ b/rustc_deps/vendor/num-bigint/benches/bigint.rs
@@ -1,18 +1,23 @@
 #![feature(test)]
+#![cfg(feature = "rand")]
 
-extern crate test;
 extern crate num_bigint;
+extern crate num_integer;
 extern crate num_traits;
 extern crate rand;
+extern crate test;
 
+use num_bigint::{BigInt, BigUint, RandBigInt};
+use num_traits::{FromPrimitive, Num, One, Pow, Zero};
+use rand::{SeedableRng, StdRng};
 use std::mem::replace;
 use test::Bencher;
-use num_bigint::{BigInt, BigUint, RandBigInt};
-use num_traits::{Zero, One, FromPrimitive, Num};
-use rand::{SeedableRng, StdRng};
 
 fn get_rng() -> StdRng {
-    let seed: &[_] = &[1, 2, 3, 4];
+    let mut seed = [0; 32];
+    for i in 1..32 {
+        seed[usize::from(i)] = i;
+    }
     SeedableRng::from_seed(seed)
 }
 
@@ -34,7 +39,7 @@
 
 fn factorial(n: usize) -> BigUint {
     let mut f: BigUint = One::one();
-    for i in 1..(n+1) {
+    for i in 1..(n + 1) {
         let bu: BigUint = FromPrimitive::from_usize(i).unwrap();
         f = f * bu;
     }
@@ -210,6 +215,52 @@
     from_str_radix_bench(b, 36);
 }
 
+fn rand_bench(b: &mut Bencher, bits: usize) {
+    let mut rng = get_rng();
+
+    b.iter(|| rng.gen_bigint(bits));
+}
+
+#[bench]
+fn rand_64(b: &mut Bencher) {
+    rand_bench(b, 1 << 6);
+}
+
+#[bench]
+fn rand_256(b: &mut Bencher) {
+    rand_bench(b, 1 << 8);
+}
+
+#[bench]
+fn rand_1009(b: &mut Bencher) {
+    rand_bench(b, 1009);
+}
+
+#[bench]
+fn rand_2048(b: &mut Bencher) {
+    rand_bench(b, 1 << 11);
+}
+
+#[bench]
+fn rand_4096(b: &mut Bencher) {
+    rand_bench(b, 1 << 12);
+}
+
+#[bench]
+fn rand_8192(b: &mut Bencher) {
+    rand_bench(b, 1 << 13);
+}
+
+#[bench]
+fn rand_65536(b: &mut Bencher) {
+    rand_bench(b, 1 << 16);
+}
+
+#[bench]
+fn rand_131072(b: &mut Bencher) {
+    rand_bench(b, 1 << 17);
+}
+
 #[bench]
 fn shl(b: &mut Bencher) {
     let n = BigUint::one() << 1000;
@@ -250,27 +301,27 @@
         for i in 2..upper + 1 {
             for j in 2..upper + 1 {
                 let i_big = BigUint::from_usize(i).unwrap();
-                num_traits::pow(i_big, j);
+                i_big.pow(j);
             }
         }
     });
 }
 
-
 /// This modulus is the prime from the 2048-bit MODP DH group:
 /// https://tools.ietf.org/html/rfc3526#section-3
-const RFC3526_2048BIT_MODP_GROUP: &'static str = "\
-    FFFFFFFF_FFFFFFFF_C90FDAA2_2168C234_C4C6628B_80DC1CD1\
-    29024E08_8A67CC74_020BBEA6_3B139B22_514A0879_8E3404DD\
-    EF9519B3_CD3A431B_302B0A6D_F25F1437_4FE1356D_6D51C245\
-    E485B576_625E7EC6_F44C42E9_A637ED6B_0BFF5CB6_F406B7ED\
-    EE386BFB_5A899FA5_AE9F2411_7C4B1FE6_49286651_ECE45B3D\
-    C2007CB8_A163BF05_98DA4836_1C55D39A_69163FA8_FD24CF5F\
-    83655D23_DCA3AD96_1C62F356_208552BB_9ED52907_7096966D\
-    670C354E_4ABC9804_F1746C08_CA18217C_32905E46_2E36CE3B\
-    E39E772C_180E8603_9B2783A2_EC07A28F_B5C55DF0_6F4C52C9\
-    DE2BCBF6_95581718_3995497C_EA956AE5_15D22618_98FA0510\
-    15728E5A_8AACAA68_FFFFFFFF_FFFFFFFF";
+const RFC3526_2048BIT_MODP_GROUP: &'static str =
+    "\
+     FFFFFFFF_FFFFFFFF_C90FDAA2_2168C234_C4C6628B_80DC1CD1\
+     29024E08_8A67CC74_020BBEA6_3B139B22_514A0879_8E3404DD\
+     EF9519B3_CD3A431B_302B0A6D_F25F1437_4FE1356D_6D51C245\
+     E485B576_625E7EC6_F44C42E9_A637ED6B_0BFF5CB6_F406B7ED\
+     EE386BFB_5A899FA5_AE9F2411_7C4B1FE6_49286651_ECE45B3D\
+     C2007CB8_A163BF05_98DA4836_1C55D39A_69163FA8_FD24CF5F\
+     83655D23_DCA3AD96_1C62F356_208552BB_9ED52907_7096966D\
+     670C354E_4ABC9804_F1746C08_CA18217C_32905E46_2E36CE3B\
+     E39E772C_180E8603_9B2783A2_EC07A28F_B5C55DF0_6F4C52C9\
+     DE2BCBF6_95581718_3995497C_EA956AE5_15D22618_98FA0510\
+     15728E5A_8AACAA68_FFFFFFFF_FFFFFFFF";
 
 #[bench]
 fn modpow(b: &mut Bencher) {
@@ -292,3 +343,27 @@
 
     b.iter(|| base.modpow(&e, &m));
 }
+
+#[bench]
+fn roots_sqrt(b: &mut Bencher) {
+    let mut rng = get_rng();
+    let x = rng.gen_biguint(2048);
+
+    b.iter(|| x.sqrt());
+}
+
+#[bench]
+fn roots_cbrt(b: &mut Bencher) {
+    let mut rng = get_rng();
+    let x = rng.gen_biguint(2048);
+
+    b.iter(|| x.cbrt());
+}
+
+#[bench]
+fn roots_nth_100(b: &mut Bencher) {
+    let mut rng = get_rng();
+    let x = rng.gen_biguint(2048);
+
+    b.iter(|| x.nth_root(100));
+}
diff --git a/rustc_deps/vendor/num-bigint/benches/factorial.rs b/rustc_deps/vendor/num-bigint/benches/factorial.rs
index fc79845..4392df8 100644
--- a/rustc_deps/vendor/num-bigint/benches/factorial.rs
+++ b/rustc_deps/vendor/num-bigint/benches/factorial.rs
@@ -11,7 +11,11 @@
 
 #[bench]
 fn factorial_mul_biguint(b: &mut Bencher) {
-    b.iter(|| (1u32..1000).map(BigUint::from).fold(BigUint::one(), Mul::mul));
+    b.iter(|| {
+        (1u32..1000)
+            .map(BigUint::from)
+            .fold(BigUint::one(), Mul::mul)
+    });
 }
 
 #[bench]
@@ -25,7 +29,12 @@
 #[bench]
 fn factorial_div_biguint(b: &mut Bencher) {
     let n: BigUint = (1u32..1000).fold(BigUint::one(), Mul::mul);
-    b.iter(|| (1u32..1000).rev().map(BigUint::from).fold(n.clone(), Div::div));
+    b.iter(|| {
+        (1u32..1000)
+            .rev()
+            .map(BigUint::from)
+            .fold(n.clone(), Div::div)
+    });
 }
 
 #[bench]
diff --git a/rustc_deps/vendor/num-bigint/benches/gcd.rs b/rustc_deps/vendor/num-bigint/benches/gcd.rs
index 695aee8..5fe5260 100644
--- a/rustc_deps/vendor/num-bigint/benches/gcd.rs
+++ b/rustc_deps/vendor/num-bigint/benches/gcd.rs
@@ -1,19 +1,23 @@
 #![feature(test)]
+#![cfg(feature = "rand")]
 
-extern crate test;
 extern crate num_bigint;
 extern crate num_integer;
 extern crate num_traits;
 extern crate rand;
+extern crate test;
 
-use test::Bencher;
 use num_bigint::{BigUint, RandBigInt};
 use num_integer::Integer;
 use num_traits::Zero;
 use rand::{SeedableRng, StdRng};
+use test::Bencher;
 
 fn get_rng() -> StdRng {
-    let seed: &[_] = &[1, 2, 3, 4];
+    let mut seed = [0; 32];
+    for i in 1..32 {
+        seed[usize::from(i)] = i;
+    }
     SeedableRng::from_seed(seed)
 }
 
@@ -27,7 +31,6 @@
     b.iter(|| gcd(&x, &y));
 }
 
-
 fn euclid(x: &BigUint, y: &BigUint) -> BigUint {
     // Use Euclid's algorithm
     let mut m = x.clone();
@@ -60,7 +63,6 @@
     bench(b, 4096, euclid);
 }
 
-
 // Integer for BigUint now uses Stein for gcd
 
 #[bench]
diff --git a/rustc_deps/vendor/num-bigint/benches/shootout-pidigits.rs b/rustc_deps/vendor/num-bigint/benches/shootout-pidigits.rs
index 2d3b221..515710d 100644
--- a/rustc_deps/vendor/num-bigint/benches/shootout-pidigits.rs
+++ b/rustc_deps/vendor/num-bigint/benches/shootout-pidigits.rs
@@ -42,12 +42,12 @@
 extern crate num_integer;
 extern crate num_traits;
 
-use std::str::FromStr;
 use std::io;
+use std::str::FromStr;
 
 use num_bigint::BigInt;
 use num_integer::Integer;
-use num_traits::{FromPrimitive, ToPrimitive, One, Zero};
+use num_traits::{FromPrimitive, One, ToPrimitive, Zero};
 
 struct Context {
     numer: BigInt,
@@ -69,11 +69,13 @@
     }
 
     fn extract_digit(&self) -> i32 {
-        if self.numer > self.accum {return -1;}
-        let (q, r) =
-            (&self.numer * Context::from_i32(3) + &self.accum)
-            .div_rem(&self.denom);
-        if r + &self.numer >= self.denom {return -1;}
+        if self.numer > self.accum {
+            return -1;
+        }
+        let (q, r) = (&self.numer * Context::from_i32(3) + &self.accum).div_rem(&self.denom);
+        if r + &self.numer >= self.denom {
+            return -1;
+        }
         q.to_i32().unwrap()
     }
 
@@ -96,24 +98,30 @@
     let mut k = 0;
     let mut context = Context::new();
 
-    for i in 1..(n+1) {
+    for i in 1..(n + 1) {
         let mut d;
         loop {
             k += 1;
             context.next_term(k);
             d = context.extract_digit();
-            if d != -1 {break;}
+            if d != -1 {
+                break;
+            }
         }
 
         try!(write!(out, "{}", d));
-        if i % 10 == 0 { try!(write!(out, "\t:{}\n", i)); }
+        if i % 10 == 0 {
+            try!(write!(out, "\t:{}\n", i));
+        }
 
         context.eliminate_digit(d);
     }
 
     let m = n % 10;
     if m != 0 {
-        for _ in m..10 { try!(write!(out, " ")); }
+        for _ in m..10 {
+            try!(write!(out, " "));
+        }
         try!(write!(out, "\t:{}\n", n));
     }
     Ok(())
@@ -126,7 +134,7 @@
     let n = if args.len() < 2 {
         DEFAULT_DIGITS
     } else if args[1] == "--bench" {
-        return pidigits(DEFAULT_DIGITS, &mut std::io::sink()).unwrap()
+        return pidigits(DEFAULT_DIGITS, &mut std::io::sink()).unwrap();
     } else {
         FromStr::from_str(&args[1]).unwrap()
     };
diff --git a/rustc_deps/vendor/num-bigint/ci/test_full.sh b/rustc_deps/vendor/num-bigint/ci/test_full.sh
index c8cfd72..3021b04 100755
--- a/rustc_deps/vendor/num-bigint/ci/test_full.sh
+++ b/rustc_deps/vendor/num-bigint/ci/test_full.sh
@@ -29,3 +29,8 @@
 # test all supported features together
 cargo build --features="std $FEATURES"
 cargo test --features="std $FEATURES"
+
+# make sure benchmarks can be built
+if [[ "$TRAVIS_RUST_VERSION" == "nightly" ]]; then
+  cargo bench --all-features --no-run
+fi
diff --git a/rustc_deps/vendor/num-bigint/src/algorithms.rs b/rustc_deps/vendor/num-bigint/src/algorithms.rs
index 008fcd2..90ef702 100644
--- a/rustc_deps/vendor/num-bigint/src/algorithms.rs
+++ b/rustc_deps/vendor/num-bigint/src/algorithms.rs
@@ -1,10 +1,10 @@
 use std::borrow::Cow;
 use std::cmp;
-use std::cmp::Ordering::{self, Less, Greater, Equal};
+use std::cmp::Ordering::{self, Equal, Greater, Less};
 use std::iter::repeat;
 use std::mem;
 use traits;
-use traits::{Zero, One};
+use traits::{One, Zero};
 
 use biguint::BigUint;
 
@@ -95,7 +95,9 @@
     if carry != 0 {
         for a in a_hi {
             *a = adc(*a, 0, &mut carry);
-            if carry == 0 { break }
+            if carry == 0 {
+                break;
+            }
         }
     }
 
@@ -127,13 +129,17 @@
     if borrow != 0 {
         for a in a_hi {
             *a = sbb(*a, 0, &mut borrow);
-            if borrow == 0 { break }
+            if borrow == 0 {
+                break;
+            }
         }
     }
 
     // note: we're _required_ to fail on underflow
-    assert!(borrow == 0 && b_hi.iter().all(|x| *x == 0),
-            "Cannot subtract b from a because b is larger than a.");
+    assert!(
+        borrow == 0 && b_hi.iter().all(|x| *x == 0),
+        "Cannot subtract b from a because b is larger than a."
+    );
 }
 
 // Only for the Sub impl. `a` and `b` must have same length.
@@ -162,8 +168,10 @@
     assert!(a_hi.is_empty());
 
     // note: we're _required_ to fail on underflow
-    assert!(borrow == 0 && b_hi.iter().all(|x| *x == 0),
-            "Cannot subtract b from a because b is larger than a.");
+    assert!(
+        borrow == 0 && b_hi.iter().all(|x| *x == 0),
+        "Cannot subtract b from a because b is larger than a."
+    );
 }
 
 pub fn sub_sign(a: &[BigDigit], b: &[BigDigit]) -> (Sign, BigUint) {
@@ -210,11 +218,7 @@
 /// Three argument multiply accumulate:
 /// acc += b * c
 fn mac3(acc: &mut [BigDigit], b: &[BigDigit], c: &[BigDigit]) {
-    let (x, y) = if b.len() < c.len() {
-        (b, c)
-    } else {
-        (c, b)
-    };
+    let (x, y) = if b.len() < c.len() { (b, c) } else { (c, b) };
 
     // We use three algorithms for different input sizes.
     //
@@ -317,8 +321,8 @@
         // Not required, but the adds go faster if we drop any unneeded 0s from the end:
         p.normalize();
 
-        add2(&mut acc[b..],        &p.data[..]);
-        add2(&mut acc[b * 2..],    &p.data[..]);
+        add2(&mut acc[b..], &p.data[..]);
+        add2(&mut acc[b * 2..], &p.data[..]);
 
         // Zero out p before the next multiply:
         p.data.truncate(0);
@@ -328,8 +332,8 @@
         mac3(&mut p.data[..], x0, y0);
         p.normalize();
 
-        add2(&mut acc[..],         &p.data[..]);
-        add2(&mut acc[b..],        &p.data[..]);
+        add2(&mut acc[..], &p.data[..]);
+        add2(&mut acc[b..], &p.data[..]);
 
         // p1 = (x1 - x0) * (y1 - y0)
         // We do this one last, since it may be negative and acc can't ever be negative:
@@ -337,7 +341,7 @@
         let (j1_sign, j1) = sub_sign(y1, y0);
 
         match j0_sign * j1_sign {
-            Plus    => {
+            Plus => {
                 p.data.truncate(0);
                 p.data.extend(repeat(0).take(len));
 
@@ -345,13 +349,12 @@
                 p.normalize();
 
                 sub2(&mut acc[b..], &p.data[..]);
-            },
-            Minus   => {
+            }
+            Minus => {
                 mac3(&mut acc[b..], &j0.data[..], &j1.data[..]);
-            },
-            NoSign  => (),
+            }
+            NoSign => (),
         }
-
     } else {
         // Toom-3 multiplication:
         //
@@ -361,7 +364,7 @@
         // The general idea is to treat the large integers digits as
         // polynomials of a certain degree and determine the coefficients/digits
         // of the product of the two via interpolation of the polynomial product.
-        let i = y.len()/3 + 1;
+        let i = y.len() / 3 + 1;
 
         let x0_len = cmp::min(x.len(), i);
         let x1_len = cmp::min(x.len() - x0_len, i);
@@ -432,7 +435,7 @@
         let r2 = &p2 * &q2;
 
         // w(-2)
-        let r3 = ((p2 + x2)*2 - x0) * ((q2 + y2)*2 - y0);
+        let r3 = ((p2 + x2) * 2 - x0) * ((q2 + y2) * 2 - y0);
 
         // Evaluating these points gives us the following system of linear equations.
         //
@@ -456,14 +459,18 @@
         let mut comp3: BigInt = (r3 - &r1) / 3;
         let mut comp1: BigInt = (r1 - &r2) / 2;
         let mut comp2: BigInt = r2 - &r0;
-        comp3 = (&comp2 - comp3)/2 + &r4*2;
+        comp3 = (&comp2 - comp3) / 2 + &r4 * 2;
         comp2 = comp2 + &comp1 - &r4;
         comp1 = comp1 - &comp3;
 
         // Recomposition. The coefficients of the polynomial are now known.
         //
         // Evaluate at w(t) where t is our given base to get the result.
-        let result = r0 + (comp1 << 32*i) + (comp2 << 2*32*i) + (comp3 << 3*32*i) + (r4 << 4*32*i);
+        let result = r0
+            + (comp1 << 32 * i)
+            + (comp2 << 2 * 32 * i)
+            + (comp3 << 3 * 32 * i)
+            + (r4 << 4 * 32 * i);
         let result_pos = result.to_biguint().unwrap();
         add2(&mut acc[..], &result_pos.data);
     }
@@ -533,13 +540,17 @@
 
     let bn = *b.data.last().unwrap();
     let q_len = a.data.len() - b.data.len() + 1;
-    let mut q = BigUint { data: vec![0; q_len] };
+    let mut q = BigUint {
+        data: vec![0; q_len],
+    };
 
     // We reuse the same temporary to avoid hitting the allocator in our inner loop - this is
     // sized to hold a0 (in the common case; if a particular digit of the quotient is zero a0
     // can be bigger).
     //
-    let mut tmp = BigUint { data: Vec::with_capacity(2) };
+    let mut tmp = BigUint {
+        data: Vec::with_capacity(2),
+    };
 
     for j in (0..q_len).rev() {
         /*
@@ -678,9 +689,9 @@
 #[cfg(test)]
 mod algorithm_tests {
     use big_digit::BigDigit;
-    use {BigUint, BigInt};
-    use Sign::Plus;
     use traits::Num;
+    use Sign::Plus;
+    use {BigInt, BigUint};
 
     #[test]
     fn test_sub_sign() {
diff --git a/rustc_deps/vendor/num-bigint/src/bigint.rs b/rustc_deps/vendor/num-bigint/src/bigint.rs
index 3c8d296..16caac4 100644
--- a/rustc_deps/vendor/num-bigint/src/bigint.rs
+++ b/rustc_deps/vendor/num-bigint/src/bigint.rs
@@ -1,24 +1,27 @@
-use std::default::Default;
-use std::ops::{Add, BitAnd, BitOr, BitXor, Div, Mul, Neg, Not, Rem, Shl, Shr, Sub,
-               AddAssign, BitAndAssign, BitOrAssign, BitXorAssign, DivAssign,
-               MulAssign, RemAssign, ShlAssign, ShrAssign, SubAssign};
-use std::str::{self, FromStr};
-use std::fmt;
-use std::mem;
-use std::cmp::Ordering::{self, Less, Greater, Equal};
-use std::{i64, u64};
-#[cfg(has_i128)]
-use std::{i128, u128};
 #[allow(deprecated, unused_imports)]
 use std::ascii::AsciiExt;
+use std::cmp::Ordering::{self, Equal, Greater, Less};
+use std::default::Default;
+use std::fmt;
 use std::iter::{Product, Sum};
+use std::mem;
+use std::ops::{
+    Add, AddAssign, BitAnd, BitAndAssign, BitOr, BitOrAssign, BitXor, BitXorAssign, Div, DivAssign,
+    Mul, MulAssign, Neg, Not, Rem, RemAssign, Shl, ShlAssign, Shr, ShrAssign, Sub, SubAssign,
+};
+use std::str::{self, FromStr};
+#[cfg(has_i128)]
+use std::{i128, u128};
+use std::{i64, u64};
 
 #[cfg(feature = "serde")]
 use serde;
 
-use integer::Integer;
-use traits::{ToPrimitive, FromPrimitive, Num, CheckedAdd, CheckedSub,
-             CheckedMul, CheckedDiv, Signed, Zero, One};
+use integer::{Integer, Roots};
+use traits::{
+    CheckedAdd, CheckedDiv, CheckedMul, CheckedSub, FromPrimitive, Num, One, Pow, Signed,
+    ToPrimitive, Zero,
+};
 
 use self::Sign::{Minus, NoSign, Plus};
 
@@ -28,8 +31,8 @@
 use biguint::to_str_radix_reversed;
 use biguint::{BigUint, IntDigits};
 
-use UsizePromotion;
 use IsizePromotion;
+use UsizePromotion;
 
 /// A Sign is a `BigInt`'s composing element.
 #[derive(PartialEq, PartialOrd, Eq, Ord, Copy, Clone, Debug, Hash)]
@@ -69,7 +72,8 @@
 #[cfg(feature = "serde")]
 impl serde::Serialize for Sign {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
-        where S: serde::Serializer
+    where
+        S: serde::Serializer,
     {
         // Note: do not change the serialization format, or it may break
         // forward and backward compatibility of serialized data!
@@ -84,7 +88,8 @@
 #[cfg(feature = "serde")]
 impl<'de> serde::Deserialize<'de> for Sign {
     fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
-        where D: serde::Deserializer<'de>
+    where
+        D: serde::Deserializer<'de>,
     {
         use serde::de::Error;
         use serde::de::Unexpected;
@@ -235,11 +240,7 @@
             }
             Minus => {
                 self.data -= 1u32;
-                self.sign = if self.data.is_zero() {
-                    NoSign
-                } else {
-                    Plus
-                };
+                self.sign = if self.data.is_zero() { NoSign } else { Plus };
             }
         }
         self
@@ -302,7 +303,7 @@
     }
     debug_assert!(a.len() > b.len() || carry_a == 0);
     debug_assert!(b.len() > a.len() || carry_b == 0);
-    if a.len() > b.len()  {
+    if a.len() > b.len() {
         for ai in a[b.len()..].iter_mut() {
             let twos_a = negate_carry(*ai, &mut carry_a);
             *ai = negate_carry(twos_a, &mut carry_and);
@@ -709,10 +710,9 @@
 // Negative values need a rounding adjustment if there are any ones in the
 // bits that are getting shifted out.
 fn shr_round_down(i: &BigInt, rhs: usize) -> bool {
-    i.is_negative() &&
-        biguint::trailing_zeros(&i.data)
-            .map(|n| n < rhs)
-            .unwrap_or(false)
+    i.is_negative() && biguint::trailing_zeros(&i.data)
+        .map(|n| n < rhs)
+        .unwrap_or(false)
 }
 
 impl Shr<usize> for BigInt {
@@ -811,6 +811,52 @@
     }
 }
 
+/// Help function for pow
+///
+/// Computes the effect of the exponent on the sign.
+#[inline]
+fn powsign<T: Integer>(sign: Sign, other: &T) -> Sign {
+    if other.is_zero() {
+        Plus
+    } else if sign != Minus {
+        sign
+    } else if other.is_odd() {
+        sign
+    } else {
+        -sign
+    }
+}
+
+macro_rules! pow_impl {
+    ($T:ty) => {
+        impl<'a> Pow<$T> for &'a BigInt {
+            type Output = BigInt;
+
+            #[inline]
+            fn pow(self, rhs: $T) -> BigInt {
+                BigInt::from_biguint(powsign(self.sign, &rhs), (&self.data).pow(rhs))
+            }
+        }
+
+        impl<'a, 'b> Pow<&'b $T> for &'a BigInt {
+            type Output = BigInt;
+
+            #[inline]
+            fn pow(self, rhs: &$T) -> BigInt {
+                BigInt::from_biguint(powsign(self.sign, rhs), (&self.data).pow(rhs))
+            }
+        }
+    };
+}
+
+pow_impl!(u8);
+pow_impl!(u16);
+pow_impl!(u32);
+pow_impl!(u64);
+pow_impl!(usize);
+#[cfg(has_i128)]
+pow_impl!(u128);
+
 // A convenience method for getting the absolute value of an i32 in a u32.
 #[inline]
 fn i32_abs_as_u32(a: i32) -> u32 {
@@ -831,6 +877,17 @@
     }
 }
 
+// A convenience method for getting the absolute value of an i128 in a u128.
+#[cfg(has_i128)]
+#[inline]
+fn i128_abs_as_u128(a: i128) -> u128 {
+    if a == i128::min_value() {
+        a as u128
+    } else {
+        a.abs() as u128
+    }
+}
+
 // We want to forward to BigUint::add, but it's not clear how that will go until
 // we compare both sign and magnitude.  So we duplicate this body for every
 // val/ref combination, deferring that decision to BigUint's own forwarding.
@@ -840,15 +897,13 @@
             (_, NoSign) => $a_owned,
             (NoSign, _) => $b_owned,
             // same sign => keep the sign with the sum of magnitudes
-            (Plus, Plus) | (Minus, Minus) =>
-                BigInt::from_biguint($a.sign, $a_data + $b_data),
+            (Plus, Plus) | (Minus, Minus) => BigInt::from_biguint($a.sign, $a_data + $b_data),
             // opposite signs => keep the sign of the larger with the difference of magnitudes
-            (Plus, Minus) | (Minus, Plus) =>
-                match $a.data.cmp(&$b.data) {
-                    Less => BigInt::from_biguint($b.sign, $b_data - $a_data),
-                    Greater => BigInt::from_biguint($a.sign, $a_data - $b_data),
-                    Equal => Zero::zero(),
-                },
+            (Plus, Minus) | (Minus, Plus) => match $a.data.cmp(&$b.data) {
+                Less => BigInt::from_biguint($b.sign, $b_data - $a_data),
+                Greater => BigInt::from_biguint($a.sign, $a_data - $b_data),
+                Equal => Zero::zero(),
+            },
         }
     };
 }
@@ -858,12 +913,14 @@
 
     #[inline]
     fn add(self, other: &BigInt) -> BigInt {
-        bigint_add!(self,
-                    self.clone(),
-                    &self.data,
-                    other,
-                    other.clone(),
-                    &other.data)
+        bigint_add!(
+            self,
+            self.clone(),
+            &self.data,
+            other,
+            other.clone(),
+            &other.data
+        )
     }
 }
 
@@ -905,54 +962,80 @@
 
 promote_all_scalars!(impl Add for BigInt, add);
 promote_all_scalars_assign!(impl AddAssign for BigInt, add_assign);
-forward_all_scalar_binop_to_val_val_commutative!(impl Add<BigDigit> for BigInt, add);
-forward_all_scalar_binop_to_val_val_commutative!(impl Add<DoubleBigDigit> for BigInt, add);
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<u32> for BigInt, add);
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<u64> for BigInt, add);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<u128> for BigInt, add);
 
-impl Add<BigDigit> for BigInt {
+impl Add<u32> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn add(self, other: BigDigit) -> BigInt {
+    fn add(self, other: u32) -> BigInt {
         match self.sign {
             NoSign => From::from(other),
             Plus => BigInt::from_biguint(Plus, self.data + other),
-            Minus =>
-                match self.data.cmp(&From::from(other)) {
-                    Equal => Zero::zero(),
-                    Less => BigInt::from_biguint(Plus, other - self.data),
-                    Greater => BigInt::from_biguint(Minus, self.data - other),
-                }
+            Minus => match self.data.cmp(&From::from(other)) {
+                Equal => Zero::zero(),
+                Less => BigInt::from_biguint(Plus, other - self.data),
+                Greater => BigInt::from_biguint(Minus, self.data - other),
+            },
         }
     }
 }
-impl AddAssign<BigDigit> for BigInt {
+impl AddAssign<u32> for BigInt {
     #[inline]
-    fn add_assign(&mut self, other: BigDigit) {
+    fn add_assign(&mut self, other: u32) {
         let n = mem::replace(self, BigInt::zero());
         *self = n + other;
     }
 }
 
-impl Add<DoubleBigDigit> for BigInt {
+impl Add<u64> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn add(self, other: DoubleBigDigit) -> BigInt {
+    fn add(self, other: u64) -> BigInt {
         match self.sign {
             NoSign => From::from(other),
             Plus => BigInt::from_biguint(Plus, self.data + other),
-            Minus =>
-                match self.data.cmp(&From::from(other)) {
-                    Equal => Zero::zero(),
-                    Less => BigInt::from_biguint(Plus, other - self.data),
-                    Greater => BigInt::from_biguint(Minus, self.data - other),
-                }
+            Minus => match self.data.cmp(&From::from(other)) {
+                Equal => Zero::zero(),
+                Less => BigInt::from_biguint(Plus, other - self.data),
+                Greater => BigInt::from_biguint(Minus, self.data - other),
+            },
         }
     }
 }
-impl AddAssign<DoubleBigDigit> for BigInt {
+impl AddAssign<u64> for BigInt {
     #[inline]
-    fn add_assign(&mut self, other: DoubleBigDigit) {
+    fn add_assign(&mut self, other: u64) {
+        let n = mem::replace(self, BigInt::zero());
+        *self = n + other;
+    }
+}
+
+#[cfg(has_i128)]
+impl Add<u128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn add(self, other: u128) -> BigInt {
+        match self.sign {
+            NoSign => From::from(other),
+            Plus => BigInt::from_biguint(Plus, self.data + other),
+            Minus => match self.data.cmp(&From::from(other)) {
+                Equal => Zero::zero(),
+                Less => BigInt::from_biguint(Plus, other - self.data),
+                Greater => BigInt::from_biguint(Minus, self.data - other),
+            },
+        }
+    }
+}
+#[cfg(has_i128)]
+impl AddAssign<u128> for BigInt {
+    #[inline]
+    fn add_assign(&mut self, other: u128) {
         let n = mem::replace(self, BigInt::zero());
         *self = n + other;
     }
@@ -960,6 +1043,8 @@
 
 forward_all_scalar_binop_to_val_val_commutative!(impl Add<i32> for BigInt, add);
 forward_all_scalar_binop_to_val_val_commutative!(impl Add<i64> for BigInt, add);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<i128> for BigInt, add);
 
 impl Add<i32> for BigInt {
     type Output = BigInt;
@@ -1007,6 +1092,31 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Add<i128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn add(self, other: i128) -> BigInt {
+        if other >= 0 {
+            self + other as u128
+        } else {
+            self - i128_abs_as_u128(other)
+        }
+    }
+}
+#[cfg(has_i128)]
+impl AddAssign<i128> for BigInt {
+    #[inline]
+    fn add_assign(&mut self, other: i128) {
+        if other >= 0 {
+            *self += other as u128;
+        } else {
+            *self -= i128_abs_as_u128(other);
+        }
+    }
+}
+
 // We want to forward to BigUint::sub, but it's not clear how that will go until
 // we compare both sign and magnitude.  So we duplicate this body for every
 // val/ref combination, deferring that decision to BigUint's own forwarding.
@@ -1034,12 +1144,14 @@
 
     #[inline]
     fn sub(self, other: &BigInt) -> BigInt {
-        bigint_sub!(self,
-                    self.clone(),
-                    &self.data,
-                    other,
-                    other.clone(),
-                    &other.data)
+        bigint_sub!(
+            self,
+            self.clone(),
+            &self.data,
+            other,
+            other.clone(),
+            &other.data
+        )
     }
 }
 
@@ -1081,35 +1193,36 @@
 
 promote_all_scalars!(impl Sub for BigInt, sub);
 promote_all_scalars_assign!(impl SubAssign for BigInt, sub_assign);
-forward_all_scalar_binop_to_val_val!(impl Sub<BigDigit> for BigInt, sub);
-forward_all_scalar_binop_to_val_val!(impl Sub<DoubleBigDigit> for BigInt, sub);
+forward_all_scalar_binop_to_val_val!(impl Sub<u32> for BigInt, sub);
+forward_all_scalar_binop_to_val_val!(impl Sub<u64> for BigInt, sub);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Sub<u128> for BigInt, sub);
 
-impl Sub<BigDigit> for BigInt {
+impl Sub<u32> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn sub(self, other: BigDigit) -> BigInt {
+    fn sub(self, other: u32) -> BigInt {
         match self.sign {
             NoSign => BigInt::from_biguint(Minus, From::from(other)),
             Minus => BigInt::from_biguint(Minus, self.data + other),
-            Plus =>
-                match self.data.cmp(&From::from(other)) {
-                    Equal => Zero::zero(),
-                    Greater => BigInt::from_biguint(Plus, self.data - other),
-                    Less => BigInt::from_biguint(Minus, other - self.data),
-                }
+            Plus => match self.data.cmp(&From::from(other)) {
+                Equal => Zero::zero(),
+                Greater => BigInt::from_biguint(Plus, self.data - other),
+                Less => BigInt::from_biguint(Minus, other - self.data),
+            },
         }
     }
 }
-impl SubAssign<BigDigit> for BigInt {
+impl SubAssign<u32> for BigInt {
     #[inline]
-    fn sub_assign(&mut self, other: BigDigit) {
+    fn sub_assign(&mut self, other: u32) {
         let n = mem::replace(self, BigInt::zero());
         *self = n - other;
     }
 }
 
-impl Sub<BigInt> for BigDigit {
+impl Sub<BigInt> for u32 {
     type Output = BigInt;
 
     #[inline]
@@ -1118,32 +1231,7 @@
     }
 }
 
-impl Sub<DoubleBigDigit> for BigInt {
-    type Output = BigInt;
-
-    #[inline]
-    fn sub(self, other: DoubleBigDigit) -> BigInt {
-        match self.sign {
-            NoSign => BigInt::from_biguint(Minus, From::from(other)),
-            Minus => BigInt::from_biguint(Minus, self.data + other),
-            Plus =>
-                match self.data.cmp(&From::from(other)) {
-                    Equal => Zero::zero(),
-                    Greater => BigInt::from_biguint(Plus, self.data - other),
-                    Less => BigInt::from_biguint(Minus, other - self.data),
-                }
-        }
-    }
-}
-impl SubAssign<DoubleBigDigit> for BigInt {
-    #[inline]
-    fn sub_assign(&mut self, other: DoubleBigDigit) {
-        let n = mem::replace(self, BigInt::zero());
-        *self = n - other;
-    }
-}
-
-impl Sub<BigInt> for DoubleBigDigit {
+impl Sub<BigInt> for u64 {
     type Output = BigInt;
 
     #[inline]
@@ -1151,9 +1239,70 @@
         -(other - self)
     }
 }
+#[cfg(has_i128)]
+impl Sub<BigInt> for u128 {
+    type Output = BigInt;
+
+    #[inline]
+    fn sub(self, other: BigInt) -> BigInt {
+        -(other - self)
+    }
+}
+
+impl Sub<u64> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn sub(self, other: u64) -> BigInt {
+        match self.sign {
+            NoSign => BigInt::from_biguint(Minus, From::from(other)),
+            Minus => BigInt::from_biguint(Minus, self.data + other),
+            Plus => match self.data.cmp(&From::from(other)) {
+                Equal => Zero::zero(),
+                Greater => BigInt::from_biguint(Plus, self.data - other),
+                Less => BigInt::from_biguint(Minus, other - self.data),
+            },
+        }
+    }
+}
+impl SubAssign<u64> for BigInt {
+    #[inline]
+    fn sub_assign(&mut self, other: u64) {
+        let n = mem::replace(self, BigInt::zero());
+        *self = n - other;
+    }
+}
+
+#[cfg(has_i128)]
+impl Sub<u128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn sub(self, other: u128) -> BigInt {
+        match self.sign {
+            NoSign => BigInt::from_biguint(Minus, From::from(other)),
+            Minus => BigInt::from_biguint(Minus, self.data + other),
+            Plus => match self.data.cmp(&From::from(other)) {
+                Equal => Zero::zero(),
+                Greater => BigInt::from_biguint(Plus, self.data - other),
+                Less => BigInt::from_biguint(Minus, other - self.data),
+            },
+        }
+    }
+}
+#[cfg(has_i128)]
+impl SubAssign<u128> for BigInt {
+    #[inline]
+    fn sub_assign(&mut self, other: u128) {
+        let n = mem::replace(self, BigInt::zero());
+        *self = n - other;
+    }
+}
 
 forward_all_scalar_binop_to_val_val!(impl Sub<i32> for BigInt, sub);
 forward_all_scalar_binop_to_val_val!(impl Sub<i64> for BigInt, sub);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Sub<i128> for BigInt, sub);
 
 impl Sub<i32> for BigInt {
     type Output = BigInt;
@@ -1227,6 +1376,44 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Sub<i128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn sub(self, other: i128) -> BigInt {
+        if other >= 0 {
+            self - other as u128
+        } else {
+            self + i128_abs_as_u128(other)
+        }
+    }
+}
+#[cfg(has_i128)]
+impl SubAssign<i128> for BigInt {
+    #[inline]
+    fn sub_assign(&mut self, other: i128) {
+        if other >= 0 {
+            *self -= other as u128;
+        } else {
+            *self += i128_abs_as_u128(other);
+        }
+    }
+}
+#[cfg(has_i128)]
+impl Sub<BigInt> for i128 {
+    type Output = BigInt;
+
+    #[inline]
+    fn sub(self, other: BigInt) -> BigInt {
+        if self >= 0 {
+            self as u128 - other
+        } else {
+            -other - i128_abs_as_u128(self)
+        }
+    }
+}
+
 forward_all_binop_to_ref_ref!(impl Mul for BigInt, mul);
 
 impl<'a, 'b> Mul<&'b BigInt> for &'a BigInt {
@@ -1248,21 +1435,23 @@
 
 promote_all_scalars!(impl Mul for BigInt, mul);
 promote_all_scalars_assign!(impl MulAssign for BigInt, mul_assign);
-forward_all_scalar_binop_to_val_val_commutative!(impl Mul<BigDigit> for BigInt, mul);
-forward_all_scalar_binop_to_val_val_commutative!(impl Mul<DoubleBigDigit> for BigInt, mul);
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<u32> for BigInt, mul);
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<u64> for BigInt, mul);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<u128> for BigInt, mul);
 
-impl Mul<BigDigit> for BigInt {
+impl Mul<u32> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn mul(self, other: BigDigit) -> BigInt {
+    fn mul(self, other: u32) -> BigInt {
         BigInt::from_biguint(self.sign, self.data * other)
     }
 }
 
-impl MulAssign<BigDigit> for BigInt {
+impl MulAssign<u32> for BigInt {
     #[inline]
-    fn mul_assign(&mut self, other: BigDigit) {
+    fn mul_assign(&mut self, other: u32) {
         self.data *= other;
         if self.data.is_zero() {
             self.sign = NoSign;
@@ -1270,18 +1459,37 @@
     }
 }
 
-impl Mul<DoubleBigDigit> for BigInt {
+impl Mul<u64> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn mul(self, other: DoubleBigDigit) -> BigInt {
+    fn mul(self, other: u64) -> BigInt {
         BigInt::from_biguint(self.sign, self.data * other)
     }
 }
 
-impl MulAssign<DoubleBigDigit> for BigInt {
+impl MulAssign<u64> for BigInt {
     #[inline]
-    fn mul_assign(&mut self, other: DoubleBigDigit) {
+    fn mul_assign(&mut self, other: u64) {
+        self.data *= other;
+        if self.data.is_zero() {
+            self.sign = NoSign;
+        }
+    }
+}
+#[cfg(has_i128)]
+impl Mul<u128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn mul(self, other: u128) -> BigInt {
+        BigInt::from_biguint(self.sign, self.data * other)
+    }
+}
+#[cfg(has_i128)]
+impl MulAssign<u128> for BigInt {
+    #[inline]
+    fn mul_assign(&mut self, other: u128) {
         self.data *= other;
         if self.data.is_zero() {
             self.sign = NoSign;
@@ -1291,6 +1499,8 @@
 
 forward_all_scalar_binop_to_val_val_commutative!(impl Mul<i32> for BigInt, mul);
 forward_all_scalar_binop_to_val_val_commutative!(impl Mul<i64> for BigInt, mul);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<i128> for BigInt, mul);
 
 impl Mul<i32> for BigInt {
     type Output = BigInt;
@@ -1341,6 +1551,31 @@
         }
     }
 }
+#[cfg(has_i128)]
+impl Mul<i128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn mul(self, other: i128) -> BigInt {
+        if other >= 0 {
+            self * other as u128
+        } else {
+            -(self * i128_abs_as_u128(other))
+        }
+    }
+}
+#[cfg(has_i128)]
+impl MulAssign<i128> for BigInt {
+    #[inline]
+    fn mul_assign(&mut self, other: i128) {
+        if other >= 0 {
+            *self *= other as u128;
+        } else {
+            self.sign = -self.sign;
+            *self *= i128_abs_as_u128(other);
+        }
+    }
+}
 
 forward_all_binop_to_ref_ref!(impl Div for BigInt, div);
 
@@ -1364,21 +1599,23 @@
 
 promote_all_scalars!(impl Div for BigInt, div);
 promote_all_scalars_assign!(impl DivAssign for BigInt, div_assign);
-forward_all_scalar_binop_to_val_val!(impl Div<BigDigit> for BigInt, div);
-forward_all_scalar_binop_to_val_val!(impl Div<DoubleBigDigit> for BigInt, div);
+forward_all_scalar_binop_to_val_val!(impl Div<u32> for BigInt, div);
+forward_all_scalar_binop_to_val_val!(impl Div<u64> for BigInt, div);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Div<u128> for BigInt, div);
 
-impl Div<BigDigit> for BigInt {
+impl Div<u32> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn div(self, other: BigDigit) -> BigInt {
+    fn div(self, other: u32) -> BigInt {
         BigInt::from_biguint(self.sign, self.data / other)
     }
 }
 
-impl DivAssign<BigDigit> for BigInt {
+impl DivAssign<u32> for BigInt {
     #[inline]
-    fn div_assign(&mut self, other: BigDigit) {
+    fn div_assign(&mut self, other: u32) {
         self.data /= other;
         if self.data.is_zero() {
             self.sign = NoSign;
@@ -1386,7 +1623,7 @@
     }
 }
 
-impl Div<BigInt> for BigDigit {
+impl Div<BigInt> for u32 {
     type Output = BigInt;
 
     #[inline]
@@ -1395,18 +1632,18 @@
     }
 }
 
-impl Div<DoubleBigDigit> for BigInt {
+impl Div<u64> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn div(self, other: DoubleBigDigit) -> BigInt {
+    fn div(self, other: u64) -> BigInt {
         BigInt::from_biguint(self.sign, self.data / other)
     }
 }
 
-impl DivAssign<DoubleBigDigit> for BigInt {
+impl DivAssign<u64> for BigInt {
     #[inline]
-    fn div_assign(&mut self, other: DoubleBigDigit) {
+    fn div_assign(&mut self, other: u64) {
         self.data /= other;
         if self.data.is_zero() {
             self.sign = NoSign;
@@ -1414,7 +1651,38 @@
     }
 }
 
-impl Div<BigInt> for DoubleBigDigit {
+impl Div<BigInt> for u64 {
+    type Output = BigInt;
+
+    #[inline]
+    fn div(self, other: BigInt) -> BigInt {
+        BigInt::from_biguint(other.sign, self / other.data)
+    }
+}
+
+#[cfg(has_i128)]
+impl Div<u128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn div(self, other: u128) -> BigInt {
+        BigInt::from_biguint(self.sign, self.data / other)
+    }
+}
+
+#[cfg(has_i128)]
+impl DivAssign<u128> for BigInt {
+    #[inline]
+    fn div_assign(&mut self, other: u128) {
+        self.data /= other;
+        if self.data.is_zero() {
+            self.sign = NoSign;
+        }
+    }
+}
+
+#[cfg(has_i128)]
+impl Div<BigInt> for u128 {
     type Output = BigInt;
 
     #[inline]
@@ -1425,6 +1693,8 @@
 
 forward_all_scalar_binop_to_val_val!(impl Div<i32> for BigInt, div);
 forward_all_scalar_binop_to_val_val!(impl Div<i64> for BigInt, div);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Div<i128> for BigInt, div);
 
 impl Div<i32> for BigInt {
     type Output = BigInt;
@@ -1502,6 +1772,47 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Div<i128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn div(self, other: i128) -> BigInt {
+        if other >= 0 {
+            self / other as u128
+        } else {
+            -(self / i128_abs_as_u128(other))
+        }
+    }
+}
+
+#[cfg(has_i128)]
+impl DivAssign<i128> for BigInt {
+    #[inline]
+    fn div_assign(&mut self, other: i128) {
+        if other >= 0 {
+            *self /= other as u128;
+        } else {
+            self.sign = -self.sign;
+            *self /= i128_abs_as_u128(other);
+        }
+    }
+}
+
+#[cfg(has_i128)]
+impl Div<BigInt> for i128 {
+    type Output = BigInt;
+
+    #[inline]
+    fn div(self, other: BigInt) -> BigInt {
+        if self >= 0 {
+            self as u128 / other
+        } else {
+            -(i128_abs_as_u128(self) / other)
+        }
+    }
+}
+
 forward_all_binop_to_ref_ref!(impl Rem for BigInt, rem);
 
 impl<'a, 'b> Rem<&'b BigInt> for &'a BigInt {
@@ -1524,21 +1835,23 @@
 
 promote_all_scalars!(impl Rem for BigInt, rem);
 promote_all_scalars_assign!(impl RemAssign for BigInt, rem_assign);
-forward_all_scalar_binop_to_val_val!(impl Rem<BigDigit> for BigInt, rem);
-forward_all_scalar_binop_to_val_val!(impl Rem<DoubleBigDigit> for BigInt, rem);
+forward_all_scalar_binop_to_val_val!(impl Rem<u32> for BigInt, rem);
+forward_all_scalar_binop_to_val_val!(impl Rem<u64> for BigInt, rem);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Rem<u128> for BigInt, rem);
 
-impl Rem<BigDigit> for BigInt {
+impl Rem<u32> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn rem(self, other: BigDigit) -> BigInt {
+    fn rem(self, other: u32) -> BigInt {
         BigInt::from_biguint(self.sign, self.data % other)
     }
 }
 
-impl RemAssign<BigDigit> for BigInt {
+impl RemAssign<u32> for BigInt {
     #[inline]
-    fn rem_assign(&mut self, other: BigDigit) {
+    fn rem_assign(&mut self, other: u32) {
         self.data %= other;
         if self.data.is_zero() {
             self.sign = NoSign;
@@ -1546,7 +1859,7 @@
     }
 }
 
-impl Rem<BigInt> for BigDigit {
+impl Rem<BigInt> for u32 {
     type Output = BigInt;
 
     #[inline]
@@ -1555,18 +1868,18 @@
     }
 }
 
-impl Rem<DoubleBigDigit> for BigInt {
+impl Rem<u64> for BigInt {
     type Output = BigInt;
 
     #[inline]
-    fn rem(self, other: DoubleBigDigit) -> BigInt {
+    fn rem(self, other: u64) -> BigInt {
         BigInt::from_biguint(self.sign, self.data % other)
     }
 }
 
-impl RemAssign<DoubleBigDigit> for BigInt {
+impl RemAssign<u64> for BigInt {
     #[inline]
-    fn rem_assign(&mut self, other: DoubleBigDigit) {
+    fn rem_assign(&mut self, other: u64) {
         self.data %= other;
         if self.data.is_zero() {
             self.sign = NoSign;
@@ -1574,7 +1887,38 @@
     }
 }
 
-impl Rem<BigInt> for DoubleBigDigit {
+impl Rem<BigInt> for u64 {
+    type Output = BigInt;
+
+    #[inline]
+    fn rem(self, other: BigInt) -> BigInt {
+        BigInt::from_biguint(Plus, self % other.data)
+    }
+}
+
+#[cfg(has_i128)]
+impl Rem<u128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn rem(self, other: u128) -> BigInt {
+        BigInt::from_biguint(self.sign, self.data % other)
+    }
+}
+
+#[cfg(has_i128)]
+impl RemAssign<u128> for BigInt {
+    #[inline]
+    fn rem_assign(&mut self, other: u128) {
+        self.data %= other;
+        if self.data.is_zero() {
+            self.sign = NoSign;
+        }
+    }
+}
+
+#[cfg(has_i128)]
+impl Rem<BigInt> for u128 {
     type Output = BigInt;
 
     #[inline]
@@ -1585,6 +1929,8 @@
 
 forward_all_scalar_binop_to_val_val!(impl Rem<i32> for BigInt, rem);
 forward_all_scalar_binop_to_val_val!(impl Rem<i64> for BigInt, rem);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Rem<i128> for BigInt, rem);
 
 impl Rem<i32> for BigInt {
     type Output = BigInt;
@@ -1660,6 +2006,44 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Rem<i128> for BigInt {
+    type Output = BigInt;
+
+    #[inline]
+    fn rem(self, other: i128) -> BigInt {
+        if other >= 0 {
+            self % other as u128
+        } else {
+            self % i128_abs_as_u128(other)
+        }
+    }
+}
+#[cfg(has_i128)]
+impl RemAssign<i128> for BigInt {
+    #[inline]
+    fn rem_assign(&mut self, other: i128) {
+        if other >= 0 {
+            *self %= other as u128;
+        } else {
+            *self %= i128_abs_as_u128(other);
+        }
+    }
+}
+#[cfg(has_i128)]
+impl Rem<BigInt> for i128 {
+    type Output = BigInt;
+
+    #[inline]
+    fn rem(self, other: BigInt) -> BigInt {
+        if self >= 0 {
+            self as u128 % other
+        } else {
+            -(i128_abs_as_u128(self) % other)
+        }
+    }
+}
+
 impl Neg for BigInt {
     type Output = BigInt;
 
@@ -1802,24 +2186,44 @@
     }
 }
 
+impl Roots for BigInt {
+    fn nth_root(&self, n: u32) -> Self {
+        assert!(
+            !(self.is_negative() && n.is_even()),
+            "root of degree {} is imaginary",
+            n
+        );
+
+        BigInt::from_biguint(self.sign, self.data.nth_root(n))
+    }
+
+    fn sqrt(&self) -> Self {
+        assert!(!self.is_negative(), "square root is imaginary");
+
+        BigInt::from_biguint(self.sign, self.data.sqrt())
+    }
+
+    fn cbrt(&self) -> Self {
+        BigInt::from_biguint(self.sign, self.data.cbrt())
+    }
+}
+
 impl ToPrimitive for BigInt {
     #[inline]
     fn to_i64(&self) -> Option<i64> {
         match self.sign {
             Plus => self.data.to_i64(),
             NoSign => Some(0),
-            Minus => {
-                self.data.to_u64().and_then(|n| {
-                    let m: u64 = 1 << 63;
-                    if n < m {
-                        Some(-(n as i64))
-                    } else if n == m {
-                        Some(i64::MIN)
-                    } else {
-                        None
-                    }
-                })
-            }
+            Minus => self.data.to_u64().and_then(|n| {
+                let m: u64 = 1 << 63;
+                if n < m {
+                    Some(-(n as i64))
+                } else if n == m {
+                    Some(i64::MIN)
+                } else {
+                    None
+                }
+            }),
         }
     }
 
@@ -1829,18 +2233,16 @@
         match self.sign {
             Plus => self.data.to_i128(),
             NoSign => Some(0),
-            Minus => {
-                self.data.to_u128().and_then(|n| {
-                    let m: u128 = 1 << 127;
-                    if n < m {
-                        Some(-(n as i128))
-                    } else if n == m {
-                        Some(i128::MIN)
-                    } else {
-                        None
-                    }
-                })
-            }
+            Minus => self.data.to_u128().and_then(|n| {
+                let m: u128 = 1 << 127;
+                if n < m {
+                    Some(-(n as i128))
+                } else if n == m {
+                    Some(i128::MIN)
+                } else {
+                    None
+                }
+            }),
         }
     }
 
@@ -1865,24 +2267,16 @@
 
     #[inline]
     fn to_f32(&self) -> Option<f32> {
-        self.data.to_f32().map(|n| {
-            if self.sign == Minus {
-                -n
-            } else {
-                n
-            }
-        })
+        self.data
+            .to_f32()
+            .map(|n| if self.sign == Minus { -n } else { n })
     }
 
     #[inline]
     fn to_f64(&self) -> Option<f64> {
-        self.data.to_f64().map(|n| {
-            if self.sign == Minus {
-                -n
-            } else {
-                n
-            }
-        })
+        self.data
+            .to_f64()
+            .map(|n| if self.sign == Minus { -n } else { n })
     }
 }
 
@@ -1958,7 +2352,7 @@
                 BigInt::from(n as i64)
             }
         }
-    }
+    };
 }
 
 impl_bigint_from_int!(i8);
@@ -2003,7 +2397,7 @@
                 BigInt::from(n as u64)
             }
         }
-    }
+    };
 }
 
 impl_bigint_from_uint!(u8);
@@ -2054,7 +2448,8 @@
 #[cfg(feature = "serde")]
 impl serde::Serialize for BigInt {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
-        where S: serde::Serializer
+    where
+        S: serde::Serializer,
     {
         // Note: do not change the serialization format, or it may break
         // forward and backward compatibility of serialized data!
@@ -2065,7 +2460,8 @@
 #[cfg(feature = "serde")]
 impl<'de> serde::Deserialize<'de> for BigInt {
     fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
-        where D: serde::Deserializer<'de>
+    where
+        D: serde::Deserializer<'de>,
     {
         let (sign, data) = serde::Deserialize::deserialize(deserializer)?;
         Ok(BigInt::from_biguint(sign, data))
@@ -2103,9 +2499,9 @@
     #[inline]
     fn to_biguint(&self) -> Option<BigUint> {
         match self.sign() {
-            Plus    => Some(self.data.clone()),
-            NoSign  => Some(Zero::zero()),
-            Minus   => None,
+            Plus => Some(self.data.clone()),
+            NoSign => Some(Zero::zero()),
+            Minus => None,
         }
     }
 }
@@ -2118,7 +2514,7 @@
                 $from_ty(*self)
             }
         }
-    }
+    };
 }
 
 impl_to_bigint!(isize, FromPrimitive::from_isize);
@@ -2274,7 +2670,9 @@
     /// ```
     #[inline]
     pub fn parse_bytes(buf: &[u8], radix: u32) -> Option<BigInt> {
-        str::from_utf8(buf).ok().and_then(|s| BigInt::from_str_radix(s, radix).ok())
+        str::from_utf8(buf)
+            .ok()
+            .and_then(|s| BigInt::from_str_radix(s, radix).ok())
     }
 
     /// Creates and initializes a `BigInt`. Each u8 of the input slice is
@@ -2385,7 +2783,8 @@
     pub fn to_signed_bytes_le(&self) -> Vec<u8> {
         let mut bytes = self.data.to_bytes_le();
         let last_byte = bytes.last().map(|v| *v).unwrap_or(0);
-        if last_byte > 0x7f && !(last_byte == 0x80 && bytes.iter().rev().skip(1).all(Zero::is_zero)) {
+        if last_byte > 0x7f && !(last_byte == 0x80 && bytes.iter().rev().skip(1).all(Zero::is_zero))
+        {
             // msb used by magnitude, extend by 1 byte
             bytes.push(0);
         }
@@ -2521,7 +2920,10 @@
     ///
     /// Panics if the exponent is negative or the modulus is zero.
     pub fn modpow(&self, exponent: &Self, modulus: &Self) -> Self {
-        assert!(!exponent.is_negative(), "negative exponentiation is not supported!");
+        assert!(
+            !exponent.is_negative(),
+            "negative exponentiation is not supported!"
+        );
         assert!(!modulus.is_zero(), "divide by zero!");
 
         let result = self.data.modpow(&exponent.data, &modulus.data);
@@ -2538,6 +2940,24 @@
         };
         BigInt::from_biguint(sign, mag)
     }
+
+    /// Returns the truncated principal square root of `self` --
+    /// see [Roots::sqrt](https://docs.rs/num-integer/0.1/num_integer/trait.Roots.html#method.sqrt).
+    pub fn sqrt(&self) -> Self {
+        Roots::sqrt(self)
+    }
+
+    /// Returns the truncated principal cube root of `self` --
+    /// see [Roots::cbrt](https://docs.rs/num-integer/0.1/num_integer/trait.Roots.html#method.cbrt).
+    pub fn cbrt(&self) -> Self {
+        Roots::cbrt(self)
+    }
+
+    /// Returns the truncated principal `n`th root of `self` --
+    /// See [Roots::nth_root](https://docs.rs/num-integer/0.1/num_integer/trait.Roots.html#tymethod.nth_root).
+    pub fn nth_root(&self, n: u32) -> Self {
+        Roots::nth_root(self, n)
+    }
 }
 
 impl_sum_iter_type!(BigInt);
@@ -2561,7 +2981,8 @@
 /// starting from the least significant byte.
 #[inline]
 fn twos_complement<'a, I>(digits: I)
-    where I: IntoIterator<Item = &'a mut u8>
+where
+    I: IntoIterator<Item = &'a mut u8>,
 {
     let mut carry = true;
     for d in digits {
@@ -2573,7 +2994,6 @@
     }
 }
 
-
 #[test]
 fn test_from_biguint() {
     fn check(inp_s: Sign, inp_n: usize, ans_s: Sign, ans_n: usize) {
diff --git a/rustc_deps/vendor/num-bigint/src/bigrand.rs b/rustc_deps/vendor/num-bigint/src/bigrand.rs
index 610fdb3..4a13b29 100644
--- a/rustc_deps/vendor/num-bigint/src/bigrand.rs
+++ b/rustc_deps/vendor/num-bigint/src/bigrand.rs
@@ -1,17 +1,18 @@
 //! Randomization of big integers
 
-use rand::prelude::*;
 use rand::distributions::uniform::{SampleUniform, UniformSampler};
+use rand::prelude::*;
+use rand::AsByteSliceMut;
 
 use BigInt;
 use BigUint;
 use Sign::*;
 
 use big_digit::BigDigit;
-use bigint::{magnitude, into_magnitude};
+use bigint::{into_magnitude, magnitude};
 
-use traits::Zero;
 use integer::Integer;
+use traits::Zero;
 
 pub trait RandBigInt {
     /// Generate a random `BigUint` of the given bit size.
@@ -39,13 +40,15 @@
     fn gen_biguint(&mut self, bit_size: usize) -> BigUint {
         use super::big_digit::BITS;
         let (digits, rem) = bit_size.div_rem(&BITS);
-        let mut data = Vec::with_capacity(digits + 1);
-        for _ in 0..digits {
-            data.push(self.gen());
-        }
+        let mut data = vec![BigDigit::default(); digits + (rem > 0) as usize];
+        // `fill_bytes` is faster than many `gen::<u32>` calls
+        self.fill_bytes(data[..].as_byte_slice_mut());
+        // Swap bytes per the `Rng::fill` source. This might be
+        // unnecessary if reproducibility across architectures is not
+        // desired.
+        data.to_le();
         if rem > 0 {
-            let final_digit: BigDigit = self.gen();
-            data.push(final_digit >> (BITS - rem));
+            data[digits] >>= BITS - rem;
         }
         BigUint::new(data)
     }
@@ -107,7 +110,6 @@
     }
 }
 
-
 /// The back-end implementing rand's `UniformSampler` for `BigUint`.
 #[derive(Clone, Debug)]
 pub struct UniformBigUint {
@@ -148,7 +150,6 @@
     type Sampler = UniformBigUint;
 }
 
-
 /// The back-end implementing rand's `UniformSampler` for `BigInt`.
 #[derive(Clone, Debug)]
 pub struct UniformBigInt {
diff --git a/rustc_deps/vendor/num-bigint/src/biguint.rs b/rustc_deps/vendor/num-bigint/src/biguint.rs
index 5d4aaf8..7124222 100644
--- a/rustc_deps/vendor/num-bigint/src/biguint.rs
+++ b/rustc_deps/vendor/num-bigint/src/biguint.rs
@@ -1,37 +1,40 @@
-use std::borrow::Cow;
-use std::default::Default;
-use std::iter::{Product, Sum};
-use std::ops::{Add, BitAnd, BitOr, BitXor, Div, Mul, Neg, Rem, Shl, Shr, Sub,
-               AddAssign, BitAndAssign, BitOrAssign, BitXorAssign, DivAssign,
-               MulAssign, RemAssign, ShlAssign, ShrAssign, SubAssign};
-use std::str::{self, FromStr};
-use std::fmt;
-use std::cmp;
-use std::mem;
-use std::cmp::Ordering::{self, Less, Greater, Equal};
-use std::{f32, f64};
-use std::{u8, u64};
 #[allow(deprecated, unused_imports)]
 use std::ascii::AsciiExt;
+use std::borrow::Cow;
+use std::cmp;
+use std::cmp::Ordering::{self, Equal, Greater, Less};
+use std::default::Default;
+use std::fmt;
+use std::iter::{Product, Sum};
+use std::mem;
+use std::ops::{
+    Add, AddAssign, BitAnd, BitAndAssign, BitOr, BitOrAssign, BitXor, BitXorAssign, Div, DivAssign,
+    Mul, MulAssign, Neg, Rem, RemAssign, Shl, ShlAssign, Shr, ShrAssign, Sub, SubAssign,
+};
+use std::str::{self, FromStr};
+use std::{f32, f64};
+use std::{u64, u8};
 
 #[cfg(feature = "serde")]
 use serde;
 
-use integer::Integer;
-use traits::{ToPrimitive, FromPrimitive, Float, Num, Unsigned, CheckedAdd, CheckedSub, CheckedMul,
-             CheckedDiv, Zero, One};
+use integer::{Integer, Roots};
+use traits::{
+    CheckedAdd, CheckedDiv, CheckedMul, CheckedSub, Float, FromPrimitive, Num, One, Pow,
+    ToPrimitive, Unsigned, Zero,
+};
 
-use big_digit::{self, BigDigit, DoubleBigDigit};
+use big_digit::{self, BigDigit};
 
 #[path = "algorithms.rs"]
 mod algorithms;
 #[path = "monty.rs"]
 mod monty;
 
-use self::algorithms::{mac_with_carry, mul3, scalar_mul, div_rem, div_rem_digit};
 use self::algorithms::{__add2, __sub2rev, add2, sub2, sub2rev};
 use self::algorithms::{biguint_shl, biguint_shr};
 use self::algorithms::{cmp_slice, fls, ilog2};
+use self::algorithms::{div_rem, div_rem_digit, mac_with_carry, mul3, scalar_mul};
 use self::monty::monty_modpow;
 
 use UsizePromotion;
@@ -125,11 +128,14 @@
 
     let digits_per_big_digit = big_digit::BITS / bits;
 
-    let data = v.chunks(digits_per_big_digit)
-                .map(|chunk| {
-                    chunk.iter().rev().fold(0, |acc, &c| (acc << bits) | c as BigDigit)
-                })
-                .collect();
+    let data = v
+        .chunks(digits_per_big_digit)
+        .map(|chunk| {
+            chunk
+                .iter()
+                .rev()
+                .fold(0, |acc, &c| (acc << bits) | c as BigDigit)
+        }).collect();
 
     BigUint::new(data)
 }
@@ -183,11 +189,7 @@
     let radix = radix as BigDigit;
 
     let r = v.len() % power;
-    let i = if r == 0 {
-        power
-    } else {
-        r
-    };
+    let i = if r == 0 { power } else { r };
     let (head, tail) = v.split_at(i);
 
     let first = head.iter().fold(0, |acc, &d| acc * radix + d as BigDigit);
@@ -434,6 +436,58 @@
 
 impl Unsigned for BigUint {}
 
+macro_rules! pow_impl {
+    ($T:ty) => {
+        impl<'a> Pow<$T> for &'a BigUint {
+            type Output = BigUint;
+
+            #[inline]
+            fn pow(self, mut exp: $T) -> Self::Output {
+                if exp == 0 {
+                    return BigUint::one();
+                }
+                let mut base = self.clone();
+
+                while exp & 1 == 0 {
+                    base = &base * &base;
+                    exp >>= 1;
+                }
+
+                if exp == 1 {
+                    return base;
+                }
+
+                let mut acc = base.clone();
+                while exp > 1 {
+                    exp >>= 1;
+                    base = &base * &base;
+                    if exp & 1 == 1 {
+                        acc = &acc * &base;
+                    }
+                }
+                acc
+            }
+        }
+
+        impl<'a, 'b> Pow<&'b $T> for &'a BigUint {
+            type Output = BigUint;
+
+            #[inline]
+            fn pow(self, exp: &$T) -> Self::Output {
+                self.pow(*exp)
+            }
+        }
+    };
+}
+
+pow_impl!(u8);
+pow_impl!(u16);
+pow_impl!(u32);
+pow_impl!(u64);
+pow_impl!(usize);
+#[cfg(has_i128)]
+pow_impl!(u128);
+
 forward_all_binop_to_val_ref_commutative!(impl Add for BigUint, add);
 forward_val_assign!(impl AddAssign for BigUint, add_assign);
 
@@ -464,27 +518,30 @@
 
 promote_unsigned_scalars!(impl Add for BigUint, add);
 promote_unsigned_scalars_assign!(impl AddAssign for BigUint, add_assign);
-forward_all_scalar_binop_to_val_val_commutative!(impl Add<BigDigit> for BigUint, add);
-forward_all_scalar_binop_to_val_val_commutative!(impl Add<DoubleBigDigit> for BigUint, add);
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<u32> for BigUint, add);
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<u64> for BigUint, add);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val_commutative!(impl Add<u128> for BigUint, add);
 
-impl Add<BigDigit> for BigUint {
+impl Add<u32> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn add(mut self, other: BigDigit) -> BigUint {
+    fn add(mut self, other: u32) -> BigUint {
         self += other;
         self
     }
 }
-impl AddAssign<BigDigit> for BigUint {
+
+impl AddAssign<u32> for BigUint {
     #[inline]
-    fn add_assign(&mut self, other: BigDigit) {
+    fn add_assign(&mut self, other: u32) {
         if other != 0 {
             if self.data.len() == 0 {
                 self.data.push(0);
             }
 
-            let carry = __add2(&mut self.data, &[other]);
+            let carry = __add2(&mut self.data, &[other as BigDigit]);
             if carry != 0 {
                 self.data.push(carry);
             }
@@ -492,18 +549,19 @@
     }
 }
 
-impl Add<DoubleBigDigit> for BigUint {
+impl Add<u64> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn add(mut self, other: DoubleBigDigit) -> BigUint {
+    fn add(mut self, other: u64) -> BigUint {
         self += other;
         self
     }
 }
-impl AddAssign<DoubleBigDigit> for BigUint {
+
+impl AddAssign<u64> for BigUint {
     #[inline]
-    fn add_assign(&mut self, other: DoubleBigDigit) {
+    fn add_assign(&mut self, other: u64) {
         let (hi, lo) = big_digit::from_doublebigdigit(other);
         if hi == 0 {
             *self += lo;
@@ -520,6 +578,45 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Add<u128> for BigUint {
+    type Output = BigUint;
+
+    #[inline]
+    fn add(mut self, other: u128) -> BigUint {
+        self += other;
+        self
+    }
+}
+
+#[cfg(has_i128)]
+impl AddAssign<u128> for BigUint {
+    #[inline]
+    fn add_assign(&mut self, other: u128) {
+        if other <= u64::max_value() as u128 {
+            *self += other as u64
+        } else {
+            let (a, b, c, d) = u32_from_u128(other);
+            let carry = if a > 0 {
+                while self.data.len() < 4 {
+                    self.data.push(0);
+                }
+                __add2(&mut self.data, &[d, c, b, a])
+            } else {
+                debug_assert!(b > 0);
+                while self.data.len() < 3 {
+                    self.data.push(0);
+                }
+                __add2(&mut self.data, &[d, c, b])
+            };
+
+            if carry != 0 {
+                self.data.push(carry);
+            }
+        }
+    }
+}
+
 forward_val_val_binop!(impl Sub for BigUint, sub);
 forward_ref_ref_binop!(impl Sub for BigUint, sub);
 forward_val_assign!(impl SubAssign for BigUint, sub_assign);
@@ -559,57 +656,61 @@
 
 promote_unsigned_scalars!(impl Sub for BigUint, sub);
 promote_unsigned_scalars_assign!(impl SubAssign for BigUint, sub_assign);
-forward_all_scalar_binop_to_val_val!(impl Sub<BigDigit> for BigUint, sub);
-forward_all_scalar_binop_to_val_val!(impl Sub<DoubleBigDigit> for BigUint, sub);
+forward_all_scalar_binop_to_val_val!(impl Sub<u32> for BigUint, sub);
+forward_all_scalar_binop_to_val_val!(impl Sub<u64> for BigUint, sub);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Sub<u128> for BigUint, sub);
 
-impl Sub<BigDigit> for BigUint {
+impl Sub<u32> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn sub(mut self, other: BigDigit) -> BigUint {
+    fn sub(mut self, other: u32) -> BigUint {
         self -= other;
         self
     }
 }
-impl SubAssign<BigDigit> for BigUint {
-    fn sub_assign(&mut self, other: BigDigit) {
-        sub2(&mut self.data[..], &[other]);
+impl SubAssign<u32> for BigUint {
+    fn sub_assign(&mut self, other: u32) {
+        sub2(&mut self.data[..], &[other as BigDigit]);
         self.normalize();
     }
 }
 
-impl Sub<BigUint> for BigDigit {
+impl Sub<BigUint> for u32 {
     type Output = BigUint;
 
     #[inline]
     fn sub(self, mut other: BigUint) -> BigUint {
         if other.data.len() == 0 {
-            other.data.push(self);
+            other.data.push(self as BigDigit);
         } else {
-            sub2rev(&[self], &mut other.data[..]);
+            sub2rev(&[self as BigDigit], &mut other.data[..]);
         }
         other.normalized()
     }
 }
 
-impl Sub<DoubleBigDigit> for BigUint {
+impl Sub<u64> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn sub(mut self, other: DoubleBigDigit) -> BigUint {
+    fn sub(mut self, other: u64) -> BigUint {
         self -= other;
         self
     }
 }
-impl SubAssign<DoubleBigDigit> for BigUint {
-    fn sub_assign(&mut self, other: DoubleBigDigit) {
+
+impl SubAssign<u64> for BigUint {
+    #[inline]
+    fn sub_assign(&mut self, other: u64) {
         let (hi, lo) = big_digit::from_doublebigdigit(other);
         sub2(&mut self.data[..], &[lo, hi]);
         self.normalize();
     }
 }
 
-impl Sub<BigUint> for DoubleBigDigit {
+impl Sub<BigUint> for u64 {
     type Output = BigUint;
 
     #[inline]
@@ -624,6 +725,41 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Sub<u128> for BigUint {
+    type Output = BigUint;
+
+    #[inline]
+    fn sub(mut self, other: u128) -> BigUint {
+        self -= other;
+        self
+    }
+}
+#[cfg(has_i128)]
+impl SubAssign<u128> for BigUint {
+    fn sub_assign(&mut self, other: u128) {
+        let (a, b, c, d) = u32_from_u128(other);
+        sub2(&mut self.data[..], &[d, c, b, a]);
+        self.normalize();
+    }
+}
+
+#[cfg(has_i128)]
+impl Sub<BigUint> for u128 {
+    type Output = BigUint;
+
+    #[inline]
+    fn sub(self, mut other: BigUint) -> BigUint {
+        while other.data.len() < 4 {
+            other.data.push(0);
+        }
+
+        let (a, b, c, d) = u32_from_u128(self);
+        sub2rev(&[d, c, b, a], &mut other.data[..]);
+        other.normalized()
+    }
+}
+
 forward_all_binop_to_ref_ref!(impl Mul for BigUint, mul);
 forward_val_assign!(impl MulAssign for BigUint, mul_assign);
 
@@ -644,25 +780,27 @@
 
 promote_unsigned_scalars!(impl Mul for BigUint, mul);
 promote_unsigned_scalars_assign!(impl MulAssign for BigUint, mul_assign);
-forward_all_scalar_binop_to_val_val_commutative!(impl Mul<BigDigit> for BigUint, mul);
-forward_all_scalar_binop_to_val_val_commutative!(impl Mul<DoubleBigDigit> for BigUint, mul);
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<u32> for BigUint, mul);
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<u64> for BigUint, mul);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val_commutative!(impl Mul<u128> for BigUint, mul);
 
-impl Mul<BigDigit> for BigUint {
+impl Mul<u32> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn mul(mut self, other: BigDigit) -> BigUint {
+    fn mul(mut self, other: u32) -> BigUint {
         self *= other;
         self
     }
 }
-impl MulAssign<BigDigit> for BigUint {
+impl MulAssign<u32> for BigUint {
     #[inline]
-    fn mul_assign(&mut self, other: BigDigit) {
+    fn mul_assign(&mut self, other: u32) {
         if other == 0 {
             self.data.clear();
         } else {
-            let carry = scalar_mul(&mut self.data[..], other);
+            let carry = scalar_mul(&mut self.data[..], other as BigDigit);
             if carry != 0 {
                 self.data.push(carry);
             }
@@ -670,21 +808,21 @@
     }
 }
 
-impl Mul<DoubleBigDigit> for BigUint {
+impl Mul<u64> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn mul(mut self, other: DoubleBigDigit) -> BigUint {
+    fn mul(mut self, other: u64) -> BigUint {
         self *= other;
         self
     }
 }
-impl MulAssign<DoubleBigDigit> for BigUint {
+impl MulAssign<u64> for BigUint {
     #[inline]
-    fn mul_assign(&mut self, other: DoubleBigDigit) {
+    fn mul_assign(&mut self, other: u64) {
         if other == 0 {
             self.data.clear();
-        } else if other <= BigDigit::max_value() as DoubleBigDigit {
+        } else if other <= BigDigit::max_value() as u64 {
             *self *= other as BigDigit
         } else {
             let (hi, lo) = big_digit::from_doublebigdigit(other);
@@ -693,6 +831,31 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Mul<u128> for BigUint {
+    type Output = BigUint;
+
+    #[inline]
+    fn mul(mut self, other: u128) -> BigUint {
+        self *= other;
+        self
+    }
+}
+#[cfg(has_i128)]
+impl MulAssign<u128> for BigUint {
+    #[inline]
+    fn mul_assign(&mut self, other: u128) {
+        if other == 0 {
+            self.data.clear();
+        } else if other <= BigDigit::max_value() as u128 {
+            *self *= other as BigDigit
+        } else {
+            let (a, b, c, d) = u32_from_u128(other);
+            *self = mul3(&self.data[..], &[d, c, b, a])
+        }
+    }
+}
+
 forward_all_binop_to_ref_ref!(impl Div for BigUint, div);
 forward_val_assign!(impl DivAssign for BigUint, div_assign);
 
@@ -714,55 +877,57 @@
 
 promote_unsigned_scalars!(impl Div for BigUint, div);
 promote_unsigned_scalars_assign!(impl DivAssign for BigUint, div_assign);
-forward_all_scalar_binop_to_val_val!(impl Div<BigDigit> for BigUint, div);
-forward_all_scalar_binop_to_val_val!(impl Div<DoubleBigDigit> for BigUint, div);
+forward_all_scalar_binop_to_val_val!(impl Div<u32> for BigUint, div);
+forward_all_scalar_binop_to_val_val!(impl Div<u64> for BigUint, div);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Div<u128> for BigUint, div);
 
-impl Div<BigDigit> for BigUint {
+impl Div<u32> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn div(self, other: BigDigit) -> BigUint {
-        let (q, _) = div_rem_digit(self, other);
+    fn div(self, other: u32) -> BigUint {
+        let (q, _) = div_rem_digit(self, other as BigDigit);
         q
     }
 }
-impl DivAssign<BigDigit> for BigUint {
+impl DivAssign<u32> for BigUint {
     #[inline]
-    fn div_assign(&mut self, other: BigDigit) {
+    fn div_assign(&mut self, other: u32) {
         *self = &*self / other;
     }
 }
 
-impl Div<BigUint> for BigDigit {
+impl Div<BigUint> for u32 {
     type Output = BigUint;
 
     #[inline]
     fn div(self, other: BigUint) -> BigUint {
         match other.data.len() {
             0 => panic!(),
-            1 => From::from(self / other.data[0]),
+            1 => From::from(self as BigDigit / other.data[0]),
             _ => Zero::zero(),
         }
     }
 }
 
-impl Div<DoubleBigDigit> for BigUint {
+impl Div<u64> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn div(self, other: DoubleBigDigit) -> BigUint {
+    fn div(self, other: u64) -> BigUint {
         let (q, _) = self.div_rem(&From::from(other));
         q
     }
 }
-impl DivAssign<DoubleBigDigit> for BigUint {
+impl DivAssign<u64> for BigUint {
     #[inline]
-    fn div_assign(&mut self, other: DoubleBigDigit) {
+    fn div_assign(&mut self, other: u64) {
         *self = &*self / other;
     }
 }
 
-impl Div<BigUint> for DoubleBigDigit {
+impl Div<BigUint> for u64 {
     type Output = BigUint;
 
     #[inline]
@@ -776,6 +941,45 @@
     }
 }
 
+#[cfg(has_i128)]
+impl Div<u128> for BigUint {
+    type Output = BigUint;
+
+    #[inline]
+    fn div(self, other: u128) -> BigUint {
+        let (q, _) = self.div_rem(&From::from(other));
+        q
+    }
+}
+#[cfg(has_i128)]
+impl DivAssign<u128> for BigUint {
+    #[inline]
+    fn div_assign(&mut self, other: u128) {
+        *self = &*self / other;
+    }
+}
+
+#[cfg(has_i128)]
+impl Div<BigUint> for u128 {
+    type Output = BigUint;
+
+    #[inline]
+    fn div(self, other: BigUint) -> BigUint {
+        match other.data.len() {
+            0 => panic!(),
+            1 => From::from(self / other.data[0] as u128),
+            2 => From::from(
+                self / big_digit::to_doublebigdigit(other.data[1], other.data[0]) as u128,
+            ),
+            3 => From::from(self / u32_to_u128(0, other.data[2], other.data[1], other.data[0])),
+            4 => From::from(
+                self / u32_to_u128(other.data[3], other.data[2], other.data[1], other.data[0]),
+            ),
+            _ => Zero::zero(),
+        }
+    }
+}
+
 forward_all_binop_to_ref_ref!(impl Rem for BigUint, rem);
 forward_val_assign!(impl RemAssign for BigUint, rem_assign);
 
@@ -797,26 +1001,28 @@
 
 promote_unsigned_scalars!(impl Rem for BigUint, rem);
 promote_unsigned_scalars_assign!(impl RemAssign for BigUint, rem_assign);
-forward_all_scalar_binop_to_val_val!(impl Rem<BigDigit> for BigUint, rem);
-forward_all_scalar_binop_to_val_val!(impl Rem<DoubleBigDigit> for BigUint, rem);
+forward_all_scalar_binop_to_val_val!(impl Rem<u32> for BigUint, rem);
+forward_all_scalar_binop_to_val_val!(impl Rem<u64> for BigUint, rem);
+#[cfg(has_i128)]
+forward_all_scalar_binop_to_val_val!(impl Rem<u128> for BigUint, rem);
 
-impl Rem<BigDigit> for BigUint {
+impl Rem<u32> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn rem(self, other: BigDigit) -> BigUint {
-        let (_, r) = div_rem_digit(self, other);
+    fn rem(self, other: u32) -> BigUint {
+        let (_, r) = div_rem_digit(self, other as BigDigit);
         From::from(r)
     }
 }
-impl RemAssign<BigDigit> for BigUint {
+impl RemAssign<u32> for BigUint {
     #[inline]
-    fn rem_assign(&mut self, other: BigDigit) {
+    fn rem_assign(&mut self, other: u32) {
         *self = &*self % other;
     }
 }
 
-impl Rem<BigUint> for BigDigit {
+impl Rem<BigUint> for u32 {
     type Output = BigUint;
 
     #[inline]
@@ -842,34 +1048,67 @@
     }
 }
 // we can scalar %= BigUint for any scalar, including signed types
+#[cfg(has_i128)]
+impl_rem_assign_scalar!(u128, to_u128);
 impl_rem_assign_scalar!(usize, to_usize);
 impl_rem_assign_scalar!(u64, to_u64);
 impl_rem_assign_scalar!(u32, to_u32);
 impl_rem_assign_scalar!(u16, to_u16);
 impl_rem_assign_scalar!(u8, to_u8);
+#[cfg(has_i128)]
+impl_rem_assign_scalar!(i128, to_i128);
 impl_rem_assign_scalar!(isize, to_isize);
 impl_rem_assign_scalar!(i64, to_i64);
 impl_rem_assign_scalar!(i32, to_i32);
 impl_rem_assign_scalar!(i16, to_i16);
 impl_rem_assign_scalar!(i8, to_i8);
 
-impl Rem<DoubleBigDigit> for BigUint {
+impl Rem<u64> for BigUint {
     type Output = BigUint;
 
     #[inline]
-    fn rem(self, other: DoubleBigDigit) -> BigUint {
+    fn rem(self, other: u64) -> BigUint {
         let (_, r) = self.div_rem(&From::from(other));
         r
     }
 }
-impl RemAssign<DoubleBigDigit> for BigUint {
+impl RemAssign<u64> for BigUint {
     #[inline]
-    fn rem_assign(&mut self, other: DoubleBigDigit) {
+    fn rem_assign(&mut self, other: u64) {
         *self = &*self % other;
     }
 }
 
-impl Rem<BigUint> for DoubleBigDigit {
+impl Rem<BigUint> for u64 {
+    type Output = BigUint;
+
+    #[inline]
+    fn rem(mut self, other: BigUint) -> BigUint {
+        self %= other;
+        From::from(self)
+    }
+}
+
+#[cfg(has_i128)]
+impl Rem<u128> for BigUint {
+    type Output = BigUint;
+
+    #[inline]
+    fn rem(self, other: u128) -> BigUint {
+        let (_, r) = self.div_rem(&From::from(other));
+        r
+    }
+}
+#[cfg(has_i128)]
+impl RemAssign<u128> for BigUint {
+    #[inline]
+    fn rem_assign(&mut self, other: u128) {
+        *self = &*self % other;
+    }
+}
+
+#[cfg(has_i128)]
+impl Rem<BigUint> for u128 {
     type Output = BigUint;
 
     #[inline]
@@ -984,7 +1223,9 @@
 
         while !m.is_zero() {
             m >>= twos(&m);
-            if n > m { mem::swap(&mut n, &mut m) }
+            if n > m {
+                mem::swap(&mut n, &mut m)
+            }
             m -= &n;
         }
 
@@ -1026,11 +1267,106 @@
     }
 }
 
+impl Roots for BigUint {
+    // nth_root, sqrt and cbrt use Newton's method to compute
+    // principal root of a given degree for a given integer.
+
+    // Reference:
+    // Brent & Zimmermann, Modern Computer Arithmetic, v0.5.9, Algorithm 1.14
+    fn nth_root(&self, n: u32) -> Self {
+        assert!(n > 0, "root degree n must be at least 1");
+
+        if self.is_zero() || self.is_one() {
+            return self.clone();
+        }
+
+        match n {
+            // Optimize for small n
+            1 => return self.clone(),
+            2 => return self.sqrt(),
+            3 => return self.cbrt(),
+            _ => (),
+        }
+
+        let n = n as usize;
+        let n_min_1 = n - 1;
+
+        let guess = BigUint::one() << (self.bits() / n + 1);
+
+        let mut u = guess;
+        let mut s: BigUint;
+
+        loop {
+            s = u;
+            let q = self / s.pow(n_min_1);
+            let t: BigUint = n_min_1 * &s + q;
+
+            u = t / n;
+
+            if u >= s {
+                break;
+            }
+        }
+
+        s
+    }
+
+    // Reference:
+    // Brent & Zimmermann, Modern Computer Arithmetic, v0.5.9, Algorithm 1.13
+    fn sqrt(&self) -> Self {
+        if self.is_zero() || self.is_one() {
+            return self.clone();
+        }
+
+        let guess = BigUint::one() << (self.bits() / 2 + 1);
+
+        let mut u = guess;
+        let mut s: BigUint;
+
+        loop {
+            s = u;
+            let q = self / &s;
+            let t: BigUint = &s + q;
+            u = t >> 1;
+
+            if u >= s {
+                break;
+            }
+        }
+
+        s
+    }
+
+    fn cbrt(&self) -> Self {
+        if self.is_zero() || self.is_one() {
+            return self.clone();
+        }
+
+        let guess = BigUint::one() << (self.bits() / 3 + 1);
+
+        let mut u = guess;
+        let mut s: BigUint;
+
+        loop {
+            s = u;
+            let q = self / (&s * &s);
+            let t: BigUint = (&s << 1) + q;
+            u = t / 3u32;
+
+            if u >= s {
+                break;
+            }
+        }
+
+        s
+    }
+}
+
 fn high_bits_to_u64(v: &BigUint) -> u64 {
     match v.data.len() {
-        0   => 0,
-        1   => v.data[0] as u64,
-        _   => {
+        0 => 0,
+        1 => v.data[0] as u64,
+        _ => {
             let mut bits = v.bits();
             let mut ret = 0u64;
             let mut ret_bits = 0;
@@ -1042,9 +1378,9 @@
                 if bits_want != 64 {
                     ret <<= bits_want;
                 }
-                ret      |= *d as u64 >> (digit_bits - bits_want);
+                ret |= *d as u64 >> (digit_bits - bits_want);
                 ret_bits += bits_want;
-                bits     -= bits_want;
+                bits -= bits_want;
 
                 if ret_bits == 64 {
                     break;
@@ -1096,7 +1432,7 @@
                 return None;
             }
 
-            ret += (*i as u128) << bits;
+            ret |= (*i as u128) << bits;
             bits += big_digit::BITS;
         }
 
@@ -1238,7 +1574,7 @@
                 BigUint::from(n as u64)
             }
         }
-    }
+    };
 }
 
 impl_biguint_from_uint!(u8);
@@ -1267,7 +1603,7 @@
                 $from_ty(*self)
             }
         }
-    }
+    };
 }
 
 impl_to_biguint!(isize, FromPrimitive::from_isize);
@@ -1512,7 +1848,9 @@
     /// ```
     #[inline]
     pub fn parse_bytes(buf: &[u8], radix: u32) -> Option<BigUint> {
-        str::from_utf8(buf).ok().and_then(|s| BigUint::from_str_radix(s, radix).ok())
+        str::from_utf8(buf)
+            .ok()
+            .and_then(|s| BigUint::from_str_radix(s, radix).ok())
     }
 
     /// Creates and initializes a `BigUint`. Each u8 of the input slice is
@@ -1532,7 +1870,10 @@
     /// assert_eq!(a.to_radix_be(190), inbase190);
     /// ```
     pub fn from_radix_be(buf: &[u8], radix: u32) -> Option<BigUint> {
-        assert!(2 <= radix && radix <= 256, "The radix must be within 2...256");
+        assert!(
+            2 <= radix && radix <= 256,
+            "The radix must be within 2...256"
+        );
 
         if radix != 256 && buf.iter().any(|&b| b >= radix as u8) {
             return None;
@@ -1572,7 +1913,10 @@
     /// assert_eq!(a.to_radix_be(190), inbase190);
     /// ```
     pub fn from_radix_le(buf: &[u8], radix: u32) -> Option<BigUint> {
-        assert!(2 <= radix && radix <= 256, "The radix must be within 2...256");
+        assert!(
+            2 <= radix && radix <= 256,
+            "The radix must be within 2...256"
+        );
 
         if radix != 256 && buf.iter().any(|&b| b >= radix as u8) {
             return None;
@@ -1595,7 +1939,6 @@
         Some(res)
     }
 
-
     /// Returns the byte representation of the `BigUint` in big-endian byte order.
     ///
     /// # Examples
@@ -1729,7 +2072,9 @@
 
         // Otherwise do basically the same as `num::pow`, but with a modulus.
         let one = BigUint::one();
-        if exponent.is_zero() { return one; }
+        if exponent.is_zero() {
+            return one;
+        }
 
         let mut base = self % modulus;
         let mut exp = exponent.clone();
@@ -1737,7 +2082,9 @@
             base = &base * &base % modulus;
             exp >>= 1;
         }
-        if exp == one { return base }
+        if exp == one {
+            return base;
+        }
 
         let mut acc = base.clone();
         while exp > one {
@@ -1749,6 +2096,24 @@
         }
         acc
     }
+
+    /// Returns the truncated principal square root of `self` --
+    /// see [Roots::sqrt](https://docs.rs/num-integer/0.1/num_integer/trait.Roots.html#method.sqrt)
+    pub fn sqrt(&self) -> Self {
+        Roots::sqrt(self)
+    }
+
+    /// Returns the truncated principal cube root of `self` --
+    /// see [Roots::cbrt](https://docs.rs/num-integer/0.1/num_integer/trait.Roots.html#method.cbrt).
+    pub fn cbrt(&self) -> Self {
+        Roots::cbrt(self)
+    }
+
+    /// Returns the truncated principal `n`th root of `self` --
+    /// see [Roots::nth_root](https://docs.rs/num-integer/0.1/num_integer/trait.Roots.html#tymethod.nth_root).
+    pub fn nth_root(&self, n: u32) -> Self {
+        Roots::nth_root(self, n)
+    }
 }
 
 /// Returns the number of least-significant bits that are zero,
@@ -1795,10 +2160,30 @@
     }
 }
 
+/// Combine four `u32`s into a single `u128`.
+#[cfg(has_i128)]
+#[inline]
+fn u32_to_u128(a: u32, b: u32, c: u32, d: u32) -> u128 {
+    u128::from(d) | (u128::from(c) << 32) | (u128::from(b) << 64) | (u128::from(a) << 96)
+}
+
+/// Split a single `u128` into four `u32`.
+#[cfg(has_i128)]
+#[inline]
+fn u32_from_u128(n: u128) -> (u32, u32, u32, u32) {
+    (
+        (n >> 96) as u32,
+        (n >> 64) as u32,
+        (n >> 32) as u32,
+        n as u32,
+    )
+}
+
 #[cfg(feature = "serde")]
 impl serde::Serialize for BigUint {
     fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>
-        where S: serde::Serializer
+    where
+        S: serde::Serializer,
     {
         // Note: do not change the serialization format, or it may break forward
         // and backward compatibility of serialized data!  If we ever change the
@@ -1811,7 +2196,8 @@
 #[cfg(feature = "serde")]
 impl<'de> serde::Deserialize<'de> for BigUint {
     fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>
-        where D: serde::Deserializer<'de>
+    where
+        D: serde::Deserializer<'de>,
     {
         let data: Vec<u32> = try!(Vec::deserialize(deserializer));
         Ok(BigUint::new(data))
@@ -1821,7 +2207,10 @@
 /// Returns the greatest power of the radix <= big_digit::BASE
 #[inline]
 fn get_radix_base(radix: u32) -> (BigDigit, usize) {
-    debug_assert!(2 <= radix && radix <= 256, "The radix must be within 2...256");
+    debug_assert!(
+        2 <= radix && radix <= 256,
+        "The radix must be within 2...256"
+    );
     debug_assert!(!radix.is_power_of_two());
 
     // To generate this table:
@@ -1852,539 +2241,538 @@
     //        println!("({:20}, {:2}), // {:2}", base, power, radix);
     //    }
     match big_digit::BITS {
-        32  => {
+        32 => {
             const BASES: [(u32, usize); 257] = [
-                (         0,  0),
-                (         0,  0),
-                (         0,  0), //  2
+                (0, 0),
+                (0, 0),
+                (0, 0),           //  2
                 (3486784401, 20), //  3
-                (         0,  0), //  4
+                (0, 0),           //  4
                 (1220703125, 13), //  5
                 (2176782336, 12), //  6
                 (1977326743, 11), //  7
-                (         0,  0), //  8
+                (0, 0),           //  8
                 (3486784401, 10), //  9
-                (1000000000,  9), // 10
-                (2357947691,  9), // 11
-                ( 429981696,  8), // 12
-                ( 815730721,  8), // 13
-                (1475789056,  8), // 14
-                (2562890625,  8), // 15
-                (         0,  0), // 16
-                ( 410338673,  7), // 17
-                ( 612220032,  7), // 18
-                ( 893871739,  7), // 19
-                (1280000000,  7), // 20
-                (1801088541,  7), // 21
-                (2494357888,  7), // 22
-                (3404825447,  7), // 23
-                ( 191102976,  6), // 24
-                ( 244140625,  6), // 25
-                ( 308915776,  6), // 26
-                ( 387420489,  6), // 27
-                ( 481890304,  6), // 28
-                ( 594823321,  6), // 29
-                ( 729000000,  6), // 30
-                ( 887503681,  6), // 31
-                (         0,  0), // 32
-                (1291467969,  6), // 33
-                (1544804416,  6), // 34
-                (1838265625,  6), // 35
-                (2176782336,  6), // 36
-                (2565726409,  6), // 37
-                (3010936384,  6), // 38
-                (3518743761,  6), // 39
-                (4096000000,  6), // 40
-                ( 115856201,  5), // 41
-                ( 130691232,  5), // 42
-                ( 147008443,  5), // 43
-                ( 164916224,  5), // 44
-                ( 184528125,  5), // 45
-                ( 205962976,  5), // 46
-                ( 229345007,  5), // 47
-                ( 254803968,  5), // 48
-                ( 282475249,  5), // 49
-                ( 312500000,  5), // 50
-                ( 345025251,  5), // 51
-                ( 380204032,  5), // 52
-                ( 418195493,  5), // 53
-                ( 459165024,  5), // 54
-                ( 503284375,  5), // 55
-                ( 550731776,  5), // 56
-                ( 601692057,  5), // 57
-                ( 656356768,  5), // 58
-                ( 714924299,  5), // 59
-                ( 777600000,  5), // 60
-                ( 844596301,  5), // 61
-                ( 916132832,  5), // 62
-                ( 992436543,  5), // 63
-                (         0,  0), // 64
-                (1160290625,  5), // 65
-                (1252332576,  5), // 66
-                (1350125107,  5), // 67
-                (1453933568,  5), // 68
-                (1564031349,  5), // 69
-                (1680700000,  5), // 70
-                (1804229351,  5), // 71
-                (1934917632,  5), // 72
-                (2073071593,  5), // 73
-                (2219006624,  5), // 74
-                (2373046875,  5), // 75
-                (2535525376,  5), // 76
-                (2706784157,  5), // 77
-                (2887174368,  5), // 78
-                (3077056399,  5), // 79
-                (3276800000,  5), // 80
-                (3486784401,  5), // 81
-                (3707398432,  5), // 82
-                (3939040643,  5), // 83
-                (4182119424,  5), // 84
-                (  52200625,  4), // 85
-                (  54700816,  4), // 86
-                (  57289761,  4), // 87
-                (  59969536,  4), // 88
-                (  62742241,  4), // 89
-                (  65610000,  4), // 90
-                (  68574961,  4), // 91
-                (  71639296,  4), // 92
-                (  74805201,  4), // 93
-                (  78074896,  4), // 94
-                (  81450625,  4), // 95
-                (  84934656,  4), // 96
-                (  88529281,  4), // 97
-                (  92236816,  4), // 98
-                (  96059601,  4), // 99
-                ( 100000000,  4), // 100
-                ( 104060401,  4), // 101
-                ( 108243216,  4), // 102
-                ( 112550881,  4), // 103
-                ( 116985856,  4), // 104
-                ( 121550625,  4), // 105
-                ( 126247696,  4), // 106
-                ( 131079601,  4), // 107
-                ( 136048896,  4), // 108
-                ( 141158161,  4), // 109
-                ( 146410000,  4), // 110
-                ( 151807041,  4), // 111
-                ( 157351936,  4), // 112
-                ( 163047361,  4), // 113
-                ( 168896016,  4), // 114
-                ( 174900625,  4), // 115
-                ( 181063936,  4), // 116
-                ( 187388721,  4), // 117
-                ( 193877776,  4), // 118
-                ( 200533921,  4), // 119
-                ( 207360000,  4), // 120
-                ( 214358881,  4), // 121
-                ( 221533456,  4), // 122
-                ( 228886641,  4), // 123
-                ( 236421376,  4), // 124
-                ( 244140625,  4), // 125
-                ( 252047376,  4), // 126
-                ( 260144641,  4), // 127
-                (         0,  0), // 128
-                ( 276922881,  4), // 129
-                ( 285610000,  4), // 130
-                ( 294499921,  4), // 131
-                ( 303595776,  4), // 132
-                ( 312900721,  4), // 133
-                ( 322417936,  4), // 134
-                ( 332150625,  4), // 135
-                ( 342102016,  4), // 136
-                ( 352275361,  4), // 137
-                ( 362673936,  4), // 138
-                ( 373301041,  4), // 139
-                ( 384160000,  4), // 140
-                ( 395254161,  4), // 141
-                ( 406586896,  4), // 142
-                ( 418161601,  4), // 143
-                ( 429981696,  4), // 144
-                ( 442050625,  4), // 145
-                ( 454371856,  4), // 146
-                ( 466948881,  4), // 147
-                ( 479785216,  4), // 148
-                ( 492884401,  4), // 149
-                ( 506250000,  4), // 150
-                ( 519885601,  4), // 151
-                ( 533794816,  4), // 152
-                ( 547981281,  4), // 153
-                ( 562448656,  4), // 154
-                ( 577200625,  4), // 155
-                ( 592240896,  4), // 156
-                ( 607573201,  4), // 157
-                ( 623201296,  4), // 158
-                ( 639128961,  4), // 159
-                ( 655360000,  4), // 160
-                ( 671898241,  4), // 161
-                ( 688747536,  4), // 162
-                ( 705911761,  4), // 163
-                ( 723394816,  4), // 164
-                ( 741200625,  4), // 165
-                ( 759333136,  4), // 166
-                ( 777796321,  4), // 167
-                ( 796594176,  4), // 168
-                ( 815730721,  4), // 169
-                ( 835210000,  4), // 170
-                ( 855036081,  4), // 171
-                ( 875213056,  4), // 172
-                ( 895745041,  4), // 173
-                ( 916636176,  4), // 174
-                ( 937890625,  4), // 175
-                ( 959512576,  4), // 176
-                ( 981506241,  4), // 177
-                (1003875856,  4), // 178
-                (1026625681,  4), // 179
-                (1049760000,  4), // 180
-                (1073283121,  4), // 181
-                (1097199376,  4), // 182
-                (1121513121,  4), // 183
-                (1146228736,  4), // 184
-                (1171350625,  4), // 185
-                (1196883216,  4), // 186
-                (1222830961,  4), // 187
-                (1249198336,  4), // 188
-                (1275989841,  4), // 189
-                (1303210000,  4), // 190
-                (1330863361,  4), // 191
-                (1358954496,  4), // 192
-                (1387488001,  4), // 193
-                (1416468496,  4), // 194
-                (1445900625,  4), // 195
-                (1475789056,  4), // 196
-                (1506138481,  4), // 197
-                (1536953616,  4), // 198
-                (1568239201,  4), // 199
-                (1600000000,  4), // 200
-                (1632240801,  4), // 201
-                (1664966416,  4), // 202
-                (1698181681,  4), // 203
-                (1731891456,  4), // 204
-                (1766100625,  4), // 205
-                (1800814096,  4), // 206
-                (1836036801,  4), // 207
-                (1871773696,  4), // 208
-                (1908029761,  4), // 209
-                (1944810000,  4), // 210
-                (198211944