Get docker deb from GCS.

Also lock to 1.3.0 due to issues in 1.3.1 (docker/docker#8889)
Merge pull request #2104 from jbeda/gcs-docker-install

Get docker deb from GCS
Fix a missing lock in the fake etcd client.
Merge pull request #2108 from brendandburns/fix

Fix a missing lock in the fake etcd client.
test-cmd.sh can fail if public IP not available

test-cmd runs a 127.0.0.1 version of the apiservers, but does not
set --public_address_override, which means it can fail on some systems
(like Macs) which don't expose a bindable external port by default.

Since reachability is not necessary for test-cmd.sh today, set
public_address_override to 127.0.0.1
hack/local-up-cluster fails to even launch apiserver

--machines was removed but still referenced in hack/local-up-cluster.
This is not a total fix, but at least allows the apiserver to start.
Merge pull request #2110 from smarterclayton/local_up_cluster_fails

hack/local-up-cluster fails to even launch apiserver
Rework hack/ and build/ directories.

* Rewrite a bunch of the hack/ directory with modular reusable bash libraries.
* Have 'build/*' build on 'hack/*'.  The stuff in build now just runs hack/* in a docker container.
* Use a docker data container to enable faster incremental builds.
* Standardize output to _output/{local,dockerized}/bin/OS/ARCH/*.  This regularized placement makes cross compilation work.
* Move travis specific scripts under hack/travis

With new dockerized incremental builds, I can do a no-op `make quick-release` in ~30s.  This is a significant improvement.
Merge pull request #2092 from jbeda/1729-hack-build

Rationalize `build` and `hack` directories
Fix a bunch of places where the -machines flag was still attached to the apiserver.
Merge pull request #2118 from brendandburns/fix

Fix a bunch of places where the -machines flag was still attached to the apiserver
Fix minion_cache_ttl and minion_regexp flag change.
Merge pull request #2119 from ddysher/fix-flag-change

Fix minion_cache_ttl and minion_regexp flag change.
Deflake the TestCreate test, by adding an explicit wait.
Improve integration test

Use some constants for tokens.
Refactor tokenfile creation to function.
Reorder some test cases to make lookups follow creates so they succeed.
Add expected status code to test cases (some are not quite what expected,
so filed bugs #2112, #2113, #2114)
Check expected status codes.
Close Body after each iterations so that we don't run out of file handles
  when I add even more test cases in the next PR.
Handle that it is unpredictable whether status 200 or 202 is returned.
Add net-tools pre-req to Vagrant instructions

Adds a note mentioning that `net-tools` are required for bridging VirtualBox's host networks. Added a similar note under the troubleshooting section.
Add support for a 'log' command to kubectl.
Make endpoints return 400 instead of 500
Fix local cluster scripts
Fix healthz test error handling