Many-revolution Earth-centred solar-sail trajectory optimisation using differential dynamic programming