No es estrictamente necesario podrías tener un module con widgets que funcionen sin controllers, pero lo usual es que cada module tenga sus controllers, para acceder es como siempre:
http://proyect.local/module/controller/action
por defecto el router mapea de esta forma.
Nota: cada controller debe tener el prefijo del modulo, ej module clients el controller index es Clients_IndexController
Saludos.