Injecting Undetectable Backdoors in Deep Learning and Language Models