Semi-classical transport modelling of CMOS transistors with arbitrary crystal orientations and strain engineering