This might seem controversial; in many cases the client code gets longer, because it needs an extra line for an explicit `return nil`. I still prefer this, because it makes it clearer which calls can return errors.
Now that we have an error handler set, we can simply let them bubble up all the way to gocui.
Follow the JavaScript naming scheme for user interaction (alert, prompt, confirm) as discussed in #1832.