Extract RESTHandler and allow API groupings

Prepare for running multiple API versions on the same HTTP server
by decoupling some of the mechanics of apiserver.  Define a new
APIGroup object which represents a version of the API.
Etcd can close the watch channel for services

Need to loop and reopen if it's closed.
Typo in name
move go-dockerclient-copiedstructs to third_party/docker-api-structs
move all third party libs to Godeps/ dir
Merge pull request #882 from smarterclayton/typo_in_path

Typo in name
changed scripts to use godep
change travis.yml to install godep
Add instructions of using godep in README
Merge pull request #842 from smarterclayton/add_api_groups

Extract RESTHandler and allow API groupings
Merge pull request #378 from monnand/godep

Use godep to manage dependencies
Fix a typo in the godep installation instructions.
Fix kubecfg.sh
Merge pull request #881 from smarterclayton/etcd_closes_watch_channel

Etcd can close the watch channel for services
deflake tests.
Fix release and salt scripts for godep
Merge pull request #890 from jbeda/godep-cluster-fix

Fix release and salt scripts for godep
apiserver listen on 0.0.0.0 in vagrant
Merge pull request #887 from brendandburns/proxy

Deflake proxy unit tests.
Add a tear down option to the e2e, that just tears down the cluster
Useful for cleaning state after failed runs.