Argumentation and Logic Programming for Explainable and Ethical AI