Refactor kubelet access and add SSL

Overall goal of this is to add a way to configure ssl mutual auth for connections with the kubelet server. In order to do so, this tries to pull together the different places in the APIServer that access the kubelet, and add a single set of flags for configuring both port and ssl.

I'm fairly new to golang (and the k8s codebase), comments on everything extremely welcome.
Unless I'm missing something (which I probably am), this test only tests a testing utility.

Beyond what is tested in the above function this test only tests that the `/proxy/minion` path is included in the `Handle` function. Since `Handle` appears to just be a testing utility, it seemed better to remove this test, and remove `/proxy/minion` from `Handle` than to make `Handle` take another `KubeletClient` parameter and pass in an empty one everywhere it's used.

I can switch it to take the second approach if that's preferable.