Tamim Iqbal, Bangladesh’s ODI captain, has retired from international cricket three months before the World Cup begins in India, bringing a sudden end to a 16-year international career.