Implement backend level fallback for c10 (#28494)
Summary:
Pull Request resolved: https://github.com/pytorch/pytorch/pull/28494
Allow a backend-level fallback kernel that is called whenever an operator doesn't have a concrete kernel for the backend.
This is needed for lazy.
ghstack-source-id: 93872571
Test Plan: unit tests
Differential Revision: D18081495
fbshipit-source-id: 5f4964249cc226a39fd6e929a5be88a771c401a7