Move clone.sh out of tests/rust

To avoid spurious diffs in Travis from the cached tests/rust directory.
diff --git a/tests/clone.sh b/tests/clone.sh
new file mode 100755
index 0000000..d3dac1f
--- /dev/null
+++ b/tests/clone.sh
@@ -0,0 +1,24 @@
+#!/bin/bash
+
+REMOTE=rust
+REPO=https://github.com/rust-lang/rust
+REV=ebddfcb0b19471d2277e05cfbc2ad8caa81637b7
+
+set -euo pipefail
+cd "$(dirname "${BASH_SOURCE[0]}")"
+mkdir -p rust
+cd rust
+
+git init
+
+if git remote | grep --fixed-strings --line-regexp --quiet "$REMOTE"; then
+    git remote set-url "$REMOTE" "$REPO"
+else
+    git remote add "$REMOTE" "$REPO"
+fi
+
+if ! git cat-file -t "$REV" >/dev/null 2>&1; then
+    git fetch "$REMOTE" master
+fi
+
+git checkout "$REV"