When returning a new class, I'm guess you're simply forced to subclass? Why not just make the return class a property that you can set at runtime and just make the default value of the property `MMRadialProgress`?