Improving the performance of quantum dot sensitized solar cells through CdNiS quantum dots with reduced recombination and enhanced electron lifetime