Increase GUI test timeout and add more diagnostics. (dotnet/core-setup#6168)
* Increase GUI test timeout and add more diagnostics.
* Implement two timeout approach to detect hangs.
As suggested by @danmosemsft the waiting now succeeds if the window is detected in the specified timeout. If it is detected but it took longer than that (up to 3 * timeout), the test fails but notes that it did get the window. If it takes longer than 3 * timeout, the test just fails.
Commit migrated from https://github.com/dotnet/core-setup/commit/
8cdebdfda7c8d22b5460fd2b9d7e30e372093d81