Abishopric/replicator

@mpuncel @petertseng this is the first set of commits that implement the replicator, which acts as a simple rollout mechanism for a single pod to multiple nodes. This is not ready to be merged.
It's up to whoever is returning the `allocation.Allocation`. Most application services don't have masters and won't have a master node - but we frequently have services that need masters, like Hoisted Redis. Having a redis adaptation that can assign a master node would be useful.

In general, however, the `IsMaster` thing is sort of a hack for future use. I did this instead of starting a fully blown [labeling solution like that of Kubernetes](https://github.com/GoogleCloudPlatform/kubernetes/blob/master/docs/labels.md).