Apply single tagset patch

This includes the original patch, plus all conflicts since it was
applied (tag 6.0), as well as an update to the togglescratch patch
that:
a) only uses one scratchpad across all monitors
b) updates the position of the scratchpad when it switches monitors
Add deterministic monitor switching a la xmonad