better boxing (#29681)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/29681
Remove callUnboxedOnly() and instead use metaprogramming to figure out if an operator can use a boxed fallback or not.
This enables boxed fallback for ops in native_functions.yaml even if they don't have `use_c10_dispatcher: full` set, as long as they're in the range of supported types.
ghstack-source-id: 94481320
Test Plan: unit tests
Differential Revision: D18462653
fbshipit-source-id: 2955e3c4949267520a1734a6a2b919ef5e9684a2