Make it possible to call main with a custom Controller

I want to be able to start my own supervisorctl with a custom controller.

This change makes it so that it's an option to the the main function that defaults to Controller.