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.
First draft of security doc covering minion/etcd isolation
Etcd can close the watch channel for services

Need to loop and reopen if it's closed.
Merge pull request #859 from smarterclayton/add_security_doc

First draft of security doc covering minion/etcd isolation
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.
Merge pull request #881 from smarterclayton/etcd_closes_watch_channel

Etcd can close the watch channel for services
deflake tests.