Ensure that ClusterTimeout actually cancels the cluster check.
Ensure that ClusterTimeout actually cancels the cluster check.

The `k8sCluster.check()` method uses a k8s `DiscoveryClient` which sadly
uses `context.TODO()` for its connections and provides no way to pass
something else. This commit therefore moves that client into a separate
go-routine so that the timeout gets exposed.

Signed-off-by: Thomas Hallgren <5f50a84c1fa3bcff146405017f36aec1a10a9e38@datawire.io>

datawire/telepresence,datawire/telepresence,datawire/telepresence