Proposal for scheduler API

This commit adds a Binding object. The idea is that schedulers can write
these to cause pods to be asssigned to hosts. No implementation is
provided; if this is accepted, I'll write that once we get pods moved to
a different etcd key.

This continues k8s' tradition of phrasing all APIs as RESTful handlers.
The model I was going by is that:

1. A scheduler writes this binding.
2. The apiserver atomically writes the pod's containers to the key in etcd that the kubelet in question is watching.
3. The "atomic" part there means that:
 a. It reads the list of containers
 b. Sums their resource requests
 c. Verifies that the new containers fit
 d. Writes the new containers. If this fails because the list has changed in the meantime, it starts over at a. If the containers don't fit, then writing the binding fails.
4. Kubelet is watching the key and begins starting the containers.

Only kubelet knows how to actually launch a pod, and I think we want to keep it that way. We also want to push resource usage prediction and similar things down into kubelet.

It's not clear to me that the Mesos model you described is actually incompatible with this.