Add selcli that holds a reference to focused window.
Add workspaces.
Merge branch 'workspaces'.

Allows a simple management of different workspaces, with a handfull of
limitations (that will hopefully get fixed in the future):

* Assuming a workspace list [A][B][C][D][E]; once [B][C][D] get removed,
  it is not possible to move from [A] to [E] - and vice versa - without
  creating a new workspace somewhere in between. This may get solved by
  adding workspace names and switching workspaces by names.
* There is no visual feedback or "orientation" what workspace the user
  currently is on.