Add TCP socket based health checking.

Is there value looking at the type of error here now?  Outcome is unhealthy both ways, so I guess not.