Better screen removal handling
handleScreenRemoved never actually removed any view, as we were comparing the screen id wit hthe screen order length, which is updated only after the signal handler is done. Also, make really sure to remove the desktop view from m_desktopViewForScreen by searching the view itslef and not just by the index of lastscreen. Crash in 465892 seems to indicate that sich a removal by index failed leaving a dangling pointer in the map