Haile Gebrselassie announces retirement from athletics