Did some minor refactoring and work on the moving workspace functionality.

Need to change the order in which the workspaces are moved to prevent collapsing.

I also need to look into a segfault in remove_client that seems to happen intermittently.