[x] Modify main window position and/or size in case it doesn't fit the virtual desktop area anymore during startup (for example because the monitors have been changed, resolution was changed, etc...)
[x] The main window is moved in case the window clips a particular monitor and is moved to the closest monitor
[x] The main window is resized to a smaller size in case there's no screen anymore which can hold the full window
[x] The main window isn't moved in case it has been placed across multiple screens (this is currently broken and should be fixed before the merge)
[x] Exceptions are caught so that TV doesn't crash on startup in case something unexpected happens (such as Winforms throwing upon enumerating screens)
[x] TV's actions are logged so the reason why the screen is moved is part of the log file
Fixes #238