Fix TCPStore type coercion (#49685)
Summary:
Fixes https://github.com/pytorch/pytorch/issues/49052
The TCPStore example with 4 arguments was working because the datetime value was being implicitly converted to a bool. Modified the pybind definition and updated documentation.
Pull Request resolved: https://github.com/pytorch/pytorch/pull/49685
Test Plan:
```
import torch.distributed as dist
from datetime import timedelta
dist.TCPStore("127.0.0.1", 0, True, timedelta(seconds=30))
```
Now fails with
```
TypeError: __init__(): incompatible constructor arguments. The following argument types are supported:
1. torch._C._distributed_c10d.TCPStore(host_name: str, port: int, world_size: int, is_master: bool, timeout: datetime.timedelta = datetime.timedelta(seconds=300))
Invoked with: '127.0.0.1', 0, True, datetime.timedelta(seconds=30)
```
Reviewed By: mrshenli, ngimel
Differential Revision: D25668021
Pulled By: H-Huang
fbshipit-source-id: ce40b8648d0a414f0255666fbc680f1a66fae090