handle tensor subclass with non-classmethod `__torch_function__` (#151061)
Summary:
As title, this patch fixes bugs in
1. emulating `has_torch_function`
2. emulating calling `__torch_function__`
3. building a callable VT for non-classmethod `__torch_function__`
Fixes #120799, #150265, #150848.
X-link: https://github.com/pytorch/pytorch/pull/151061
Approved by: https://github.com/anijain2305, https://github.com/mlazos
ghstack dependencies: #151060
Reviewed By: Camyll
Differential Revision: D73043020
fbshipit-source-id: 32185e61f1a8d666bc6672fd0b838d86315a9d1d