Add a resource fit predicate.

Not linked into any scheduler yet.
If a pod or node consumes resources to provide its functionality, it's limit/request will need to be larger than its capacity.  Example: the VM that will be used as a Kubernetes node will need some resources for the OS and for the Kubelet.  Once you have subtracted those overheads from its request, you'll get its available capacity for hosting pods.

I expect the capacity subfield is going to be the most useful part of NodeResources.

Support for over-commitment is deliberately TBD.