[TOPI][x86] Introduce schedule_injective_from_existing and unify external schedules for all targets (#3983)
* Fix extern schedule for x86
* Register x86::schedule_extern
* Fix
* Fix
* Replace extern.py with extern.h
* Introduce new generic function schedule_injective_from_existing
* Fix
* Fix
* Add back to C++
* Fix style
* Injective schedule calls local schedule_injective_from_existing
* Fix
* Remove target arg from schedule_injective_from_existing
* Fix docs
* Try to fix unit test
* Fix test
* Fix other tests
* Fix bug