Projection/stage windows to hide when monitor drops out
I've split out the projection window and stage window into their own classes and moved the creation functionality there.
Now when a window is moved or resized, it does a monitor check and will hide it if the monitor it is meant to be assigned to is no longer available.
This fixes the situation where at our church we have a HDMI splitter, and everytime we plugin or unplug a TV/projector into it, the projection windows get forced back into the primary display and make the PC unusable as the second display momentarily drops out.
Now the above case will be detected, and hide the windows. The user may now recover by going back into the Tools > Options and hitting apply as per usual to reconfigure/position and show the windows when the display is restored.