Allow configurable Kubelet net image for isolated networks

Public access to the DockerHub is not guaranteed in all environments, add a flag to the kubelet that allows it to use a different image (like one on a private registry) as well as only pull the first time the image is needed.

Fixes #1545
I think eventually we'd test duplicates (check for double pulls with TTL?) so set might not be appropriate.

----- Original Message -----
> > @@ -138,6 +138,7 @@ func (f *FakeDockerClient) InspectImage(name string)
> > (*docker.Image, error) {
> >  type FakeDockerPuller struct {
> >  	sync.Mutex
> >  
> > +	HasImages    []string
> 
> StringSet?
> 
> ---
> Reply to this email directly or view it on GitHub:
> https://github.com/GoogleCloudPlatform/kubernetes/pull/1546/files#r18361721