Private kubelet

Make kubelet struct members private.  Create factory functions for initializing Kubelet when used outside the kubelet package.
Shouldn't an integration test kubelet let me test all interfaces, not just the two here?  What if I want to mock the cAdvisor client for a cAdvisor specific integration test?