revert Timestamp and Timedelta constructors typing allowing NaTType return
Re discussion at https://github.com/pandas-dev/pandas/pull/46171#issuecomment-1216906549

Has `Timestamp` and `Timedelta` constructors return union that includes `NaTType`

@mroeschke Not sure what to do here.  `pyright` is reporting issues in other places in the code.  See https://github.com/pandas-dev/pandas/runs/7863880652?check_suite_focus=true

I think that the level of `pyright` checking increased since the original PR was done.  Or other changes made to the code were fine without having the constructors return `NaTType` so when we declare it that way, we need to fix some other places.

On the one hand, `pyright` is picking up some potential errors. On the other hand, making this simple change means there is more work to do to fix up other parts of the code that were not touched in the original PR.

I will see if I can workaround those issues.
 I think the issue is that for mypy `__new__` cannot return an object other than from the corresponding class. https://github.com/python/mypy/pull/7188 suggests that mypy supports other type annotations for `__new__` IF they are subclasses (so basically it still seems to not support them for Timestamp).

If they cannot be fixed now, it is probably best to add those files to https://github.com/pandas-dev/pandas/blob/main/pyright_reportGeneralTypeIssues.json one day when this ignore list is small enough we can add in-line ignore comments.

 > I think the issue is that for mypy `__new__` cannot return an object other than from the corresponding class. [python/mypy#7188](https://github.com/python/mypy/pull/7188) suggests that mypy supports other type annotations for `__new__` IF they are subclasses (so basically it still seems to not support them for Timestamp).

Yes, that is it.
> 
> If they cannot be fixed now, it is probably best to add those files to https://github.com/pandas-dev/pandas/blob/main/pyright_reportGeneralTypeIssues.json one day when this ignore list is small enough we can add in-line ignore comments.

Thanks for this suggestion.  Will do this in next commit.

 Probably the first catch of stubtest :) `tz` doesn't seem to exist at runtime: https://github.com/pandas-dev/pandas/runs/7865645731?check_suite_focus=true > Probably the first catch of stubtest :) `tz` doesn't seem to exist at runtime: https://github.com/pandas-dev/pandas/runs/7865645731?check_suite_focus=true

Thanks for finding that.  I'll create `tz` and `tzinfo` methods for `NaTType` that return `None`
 @mroeschke so this is good to go.  I don't know what to do about the failure with the CircleCI Pipeline