South Africa fires 7 mayors over banking scandal