named container ports should have sane env var names
volume: improve test coverage and minor refactoring

The volume package does not test enough use-cases.

Improve test coverage by adding additional tests and refactoring
current tests to use table testing.

This change introduces a new error var to make testing unsupported
volume type errors easier.

This change does not introduce any changes in behavior.
Use Decode/Encode in etcd_tools
All types stored in etcd are now API objects.

This means I made an api.ContainerManifestList, and added a JSONBase to
endpoints (and changed Name -> JSONBase.ID).
Add CLI details to the readme.
Don't hard code load balancer zone.
Instead of apiserver panic when proxy a request to a dead minion,
print out proper message through http.Response
Merge pull request #675 from dchen1107/minionlogs

Instead of apiserver panic when proxy a request to a dead minion,
Merge pull request #669 from brendandburns/cli

Add CLI details to the readme.
Merge pull request #674 from brendandburns/service

Don't hard code load balancer zone.
Merge pull request #649 from kelseyhightower/improve_volume_test_coverage

volume: improve test coverage and minor refactoring
Validate pod on create and update.

* This commit adds pod validations on when creating and updating a pod.
Merge pull request #639 from rafael/validate_pods

Validate pod on create and update.
Merge pull request #628 from jdef/master

named container ports should have sane env var names
Fix #663

Return all healthy minions instead of only returning the first several
healthy minions. Without the PR, if the first minion failed with health
check, the machine list is empty, thus GET /api/v1beta1/pods failed
with code 500
Make file error logging edge triggered to reduce log spam.
Add some initial validation logic.
Cleanly delete service without endpoints key

If a service is deleted before the etcd key corresponding to its
endpoints has been created, a 500 error is returned (etcd key
not found).  Instead, key not found should be ignored silently.

There is a potential race condition with the controller creating
endpoints after the service has been deleted which a cleanup task
should handle in the future.

Closes #684
Merge pull request #681 from brendandburns/noisy

Make file error logging edge triggered to reduce log spam.
Merge pull request #679 from dchen1107/minionlogs

Fix #663