fix(dist/hint): handle object as 1st arg to `controller()`

The `controller()` function is overloaded: It either accepts a controller
name and controller constructor function or a map of key-value pairs,
where `key` is the controller's name and `value` its contructor function.

Previously, 'dist/hint.js' was only able to handle the former variant.