Survey on AI Ethics: A Socio-technical Perspective