Introduce concept of a ui controller
bind callbacks to ui events triggered by widgets