Effect of non-metallic X(X=F, N, S) and Cr co-doping on properties of BiFeO3: A first-principles study