Added handling for deiconifying to hidden desktops.

`ClientModelEvents::handle_client_change_from_icon_desktop` is now
capable of handling the case that the desktop that a window is being
deiconified to is not visible.

Also, deiconified windows are also focused as long as they will be
visible.
Added handlers to finish moving/resizing a client.
Fixed some naming errors