Ekrem Imamoglu, a rival of Turkish President Recep Tayyip Erdogan, has been charged with corruption.