What is the requirement for a class to be used as a custom Visualforce controller?
A. Any top-level Apex class that has a constructor that returns a PageReference
B. Any top-level Apex class that extends a PageReference
C. Any top-level Apex class that has a default, no-argument constructor
D. Any top-level Apex class that implements the controller interface