Improve error detection for URL manifests, and skip parsing if content unchanged

This bit me yesterday when I created a VM with an invalid manifest, looked in the kubelet.log, and did not find any error.
We do a hash comparison elsewhere:

https://github.com/GoogleCloudPlatform/kubernetes/blob/master/pkg/kubelet/kubelet.go#L495

Not sure if this check is necessary.