How do we manage workspaces? thunk keeps a list of window lists,
corresponding each window stack on each workspace. When you switch views
to a different workspace it moves all windows off the screen (2*w)
(2*h), and then moves back those in the current list. There's some
screen flicker, we could probably be smarter about this.
Everything is in place for multiple workspaces, bar one thing:
the view function. It updates thunk's idea of the current visible
windows, but I don't know how to tell X to hide the current set, and
instead treat the new window list as the only ones visible.
See notes for 'view' at bottom of Main.hs. If we can, say, switch to a
new workspace, which is empty, 'refresh' should spot this only display
the root window.