Binary deploy

This is a big change that'll break everything except GCE and Vagrant.  I wanted to fix everything but it is hard to test and this PR is already way too big.

Basically, we are now building and packaging binaries (built in a Docker container) and using these for the deploy.  This means we are no longer installing golang and building source on the worker machines.

Fixes #1351.

After this gets in I'll spawn new bugs to deal with the following issues:
* [ ] Rationalize `build/` directory with `hack/` directory
* [ ] nsinit install is disabled as there is no binary release or vendoring
* Fix cluster deploy scripts for environments that are dependent on our salt scripts
  * [ ] Azure @jeffmendoza 
  * [ ] VSphere @pietern 
  * [ ] Rackspace @doublerr
  * [ ] oVirt @simon3z 
  * [ ] Local @derekwaynecarr 

You can check out a recent binary release here: http://storage.googleapis.com/kubernetes-releases-56726/devel/kubernetes.tar.gz.
Drop the temporary `set +e` (it's always wrong to do that, and `[[ $? != 0 ]]` or equivalent usually means you're doing something wrong.)

Instead:

```shell
    echo "+++ Building Docker image ${image}. This can take a while."
    local docker_output
    docker_output=$(${build_cmd} 2>&1) || {
      cat <<EOF >&2
+++ Docker build command failed for ${image}

${docker_output}

To retry manually, run:

  ${build_cmd}

EOF
      return 1
    }
```