WIP: Add atomic resource reservation to nodes.

Add explicit resource reservation to nodes.  To be used to handle port allocation amongst other things. 

Only updated a single types.go, since I expect some iteration here.  Will update all types when we reach consensus.
How are you going to fit ports into the ResourceList, anyway?

Ports-in-use is a derived property; the only reason to track it at the node is caching.

We can't do atomicity properly because assigning a pod/service to a minion is a multi-object transformation.

Perhaps an easy solution is to generate, for each service wanting external traffic, a pod constrained to minions with external IPs that can forward to the service. (Wrap our proxy up in a pod?) Then our existing port tracking would be sufficient.