MEDDxAgent: A Unified Modular Agent Framework for Explainable Automatic Differential Diagnosis