Make TypeDefault, TypeDerived and VariableType anonymous namespaces (#26882)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/26882
Reduce binary size by 500kb by making TypeDerived and VariableType anonymous namespaces instead of classes. TypeDefault is also a namespace now but can't be anonymous because VariableType calls into it.his also has the nice side effect that VariableType.h and ${TypeDerived.h} are much smaller because they don't have to list the operator declarations anymore.
ghstack-source-id: 90865080
Test Plan: Measure libtorch.so size
Differential Revision: D17599686
fbshipit-source-id: da3c6641060b7410a7808f36a0a18ee3246ce2d2