Add functionality to add/remove workspaces at given indices. Example usage in rc.xml: ... <keybind key="C-4"> <action name="AddDesktop"> <where>4</where> </action> </keybind> ... will add a desktop in position 4 (one-indexed), shifting windows from higher desktop indices up one desktop. If there are less than 3 desktops currently, the in between desktops will also be created. ... <keybind key="C-S-3"> <action name="RemoveDesktop"> <where>3</where> </action> </keybind> ... will remove desktop at position 3 (one-indexed), moving its windows to desktop 4. If there are exactly 3 desktops, the windows are moved to desktop 2. If there are less than 3 desktops, nothing happens.

API changes:
screen.c:
screen_add_desktop(gboolean current); // is now
screen_add_desktop(guint index);

screen_remove_desktop(gboolean current); // is now
screen_remove_desktop(guint index);

This should be fully backwards compatible with previous scheme due to the
changes made to openbox/actions/addremovedesktop.c

Signed-off-by: Jamie Macdonald <jamie.alban@gmail.com>
Fix trailing whitespace