Multi window support

Just opening this as a TODO to myself:

* make sure there are no memory leaks
* add missing command args
* add missing keybindings
* add missing hint modes