In terms of the MVC paradigm, what are two advantages of implementing the layer of a Salesforce application using Aura Component-based development over Visualforce? A. Self-contained and reusable units of an application B. Automatic code generation C. Server-side run-time debugging D. Rich component ecosystem