Improve key and mouse bindings

New key bindings, those are difficult to hit on purpose, so it is less
likely that the user will trigger accidentally:

- Mod-Shift-Ctrl-l: Lock screen (uses "alock -auth pam")
- Mod-Shift-Ctrl-s: Suspend (uses "systemctl suspend")

New and rearranged mouse bindings:

- Left-click on the winow title will zoom the active window. This behaviour
	would be previously triggered by middle-clicking, but middle button is
	difficult to use in some machines (e.g. laptops).
- Right-click on the status text will spawn a terminal. This was also
	middle-click previously. Same rationale as the previous change.
- Right-click on the window title will spawn "dmenu" to run a command.
New "replace" action function

Calls execvp() with the argument without forking. The X connection is closed
and the systray torn down. This allows to re-execute xdwm, or to replace it
with other window manager.
New keybinding: Mod-Ctrl-Shift-r to restart xdwm

Uses the replace() action function to replace the current xdwm instance with
a fresh one.
xdwm-session: Prefer systemd-logind over ConsoleKit
Release as 6.1p2
Revert font to an X bitmap font

As nice as it is to have Xft support, passing down the font names to dmenu
and other tools might not work because those tools may not support Xft in
their side. The safe approach is to fall-back to normal X fonts for the
time being.
Release as 6.1p3
Specify both Xft and X font (for external programs)

The Xft font is used internally by xdwm. The XFLD font is used when calling
external tools (e.g. dmenu). They are set by default to use GohuFont, which
can be selected nicely both using Xft and a XFLD.
Released as 6.1p4
Revert font to Terminus
Set snap distance to 16 by default
Rework system tray

* For the tray icon window list, import and use queue.h from OpenBSD.
* Revamp memory handling functions.
* Made the code a bit more robust.
* Removed EWMH status handling code: It was copied from somewhere else
  (not sure the source) and it is not completely clear that it is needed.
  Things seem to work without it anyway.
Switch back to uxterm for the default terminal

Everybody is likely to have xterm, and also it handles better the way xdwm
focuses windows. For some reason, VTE-based terminals sometimes seem to
partially loose focus, and the cursor remains hollow (as unfocused) yet the
terminal works. Seems to be something related to how GTK+ handles focus
changes, as some other windows seem to lose the cursor sometimes as well.
Properly NULL-terminate command arrays
Display the system tray on the selected monitor

This makes the system tray follow the same policy as the status bar: it
is always shown in the selected/active monitor, and when focus changes
it moves accordingly.
Allow specifying a XLFD as font name

When a font name starts with a dash, it is assumed to be a XLFD, hence it
will be opened with XftOpenXlfd() instead of XftOpenName(). Of course, if
the specified font cannot be opened, fallback to "fixed" is used in both
cases.
Released as 6.1p5
Also copy queue.h in "make dist"
Save/restore client tags/fullscreen/floating state

When changing client tags/fullscreen/floating state, the XDWM_CLIENT_INFO
property is updated in the client windows, so when XDWM is restarted the
information is picked up and re-applied to windows. The property is also
forced to be updated when unmanaging windows and before exec() for the
respawn() action.
Re-add the 1px system tray padding