Use showws() to optimise workspace switching.

If the clients on the workspace haven't changed since the last "visit",
there is no need to call arrange() each time we show that workspace.
=> no apparent changes (still flickers), but it feels cleaner ^^