Charge transport modelling in organic semiconductors: From diodes to transistors, memories and energy harvesters