Mohamed Salah named 2017 African player of the year