Remove build dependency on `godep`

Instead of using `godep path`, we can simply set the GOPATH directly to
point to the Godeps/_workspace. We can still use `godep` to manage the
dependencies on the Godeps/ tree, but we don't need to have it available
for straight builds from git.

v2: Rebased and moved to inside kube::setup_go_environment() function.

Tested:
- Built it without godep in $PATH:
  $ hack/build-go.sh
- Ran unit tests without godep in $PATH:
  $ hack/test-go.sh
- Retested after rebase.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Revert "change travis.yml to install godep"

This reverts commit 453c328fc9585a67f3524a84ce996f86a06ab80d.

Having `godep` installed is not necessarily for build & test, only to
manage the dependencies under the Godeps/ tree.

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
s/install/get

"install" didn't work for me, but "get" did.
Add simple service redirection
Add the ability to multiple test iterations without rebuilding.

Address comments.
Fix `which salt-master` warning in Vagrant startup

The `which` command in Fedora 20 (differently from the one in Debian)
prints to stderr when the binary is not found. Redirect both stdout and
stderr to /dev/null to prevent messages from being printed by `which`.

Check whether the binary exists or not by the exit status of `which`
(non-zero means the binary does not exist) instead of checking for empty
output.

Tested:
- Started a Vagrant cluster with `vagrant up` and confirmed these
  messages were gone. Checked master and minions for Kubernetes
  components using the systemd status commands.
- Confirmed that the same error message for salt-minion is also
  suppressed from the output with this patch.

Fixes: Issue #1079

Signed-off-by: Filipe Brandenburger <filbranden@google.com>
Delete all keys prior to running integration test
Add a client integration trip that creates a pod
Merge pull request #1083 from smarterclayton/clean_etcd_in_tests

Add a client integration test
Merge pull request #1054 from filbranden/build_without_godep

Build without godep
Merge pull request #1080 from filbranden/vagrant_salt_master1

Fix `which salt-master` warning in Vagrant startup
Merge pull request #1055 from brendandburns/flake

Add the ability to multiple test iterations without rebuilding.
Merge pull request #1072 from davidreynolds/master

s/install/get
Client should validate the incoming host value

Convert host:port and URLs passed to client.New() into the proper
values, and return an error if the value is invalid.  Change CLI
to return an error if -master is invalid.  Remove Client.rawRequest
which was not in use, and fix the involved tests. Add NewOrDie

Preserves the behavior of the client to not auth when a non-https
URL is passed (although in the future this should be corrected).
Merge pull request #1074 from smarterclayton/validate_client_input

Client should validate the incoming host value
Update roadmap

We took a hard look at 1.0 and what things ae really REQUIRED to get to a
stable release that is "useful".  This required moving some things we thought
were really important but not CRITICAL down the list.

For now they are stricken from this doc, but I expect this doc to start
growing a "post 1.0" list soon.

Things stricken and why:

Using the host network: This is primarily a performance optimization, but it
causes potential problems with other uses of HostPorts.  We'd rather focus on
fixing perf problems than dodging them.  We can revisit later if there is a
strong case for it.

Representation of Ports in the Manifest structure: We discussed and decided
that, since HostPort semantics have changed, this matters less than before.

Scenarios where IP-per-pod is hard or impossible: We're still game to help
people figure out how to make it work, but we don't see a case for making k8s
1.0 work in a fundamentally different mode.  Too much churn and risk.  We can
revisit later, if needed.

Auto-scaling controller: We really want this, but it's not critical to making
k8s "useful".

Pluggable authentication: Overlaps with the other identity topic.  Having one
topic seems clearer.

Pod spreading: We still want this, but it's not critical for 1.0.

Container status snippets: We still want this, but it's not critical for 1.0.

Docker-daemon-kills-all-children-on-exit problem: This is still a big problem,
but we're not going to gate our 1.0 on something we don't control.  This has
to be documented as a shortcoming in general.

Interconnection of services: expand / decompose the service pattern: overlaps
with the other services topic.

Recipes for settings where networking is not like GCE: This is happening in
the form of cloudprovider modules, but is not going to gate 1.0.
Merge pull request #1026 from lavalamp/redirect

Add simple service redirection
Fixed kubelet /healthz by using healthz package

Fixed #1094
Remove unnecessary parameter from NewRegistry
Make salt configs work with Jinja 2.6.

Fixes #1089