Consistent UI for Web IDE Loader and Error State
## Description
There's a number of "checks" we should preform before officially starting the Web IDE. It'd be great if there was some additional information shown while loading the Web IDE. If success, we'll continue onto the Web IDE. If error, we'll show a helpful message and not just fail silently.
## Current state
Currently we have some visually different "loading" and "failure" states before the Web IDE actually starts:
| Description | Screenshot |
|-------------|------------|
| Loader |  |
| OAuth misconfigured |  |
| Unknown exception thrown |  |
It would be great to have a **consistent** UI and abstraction for how we want to present "Preflight errors" to the user.
## What kind of checks?
- OAuth configured correctly?
- Does project/branch exist? https://gitlab.com/gitlab-org/gitlab-web-ide/-/issues/359
- Were any errors thrown trying to start the Web IDE? https://gitlab.com/gitlab-org/gitlab/-/merge_requests/154178
It's possible for **both** OAauth to be misconfigure **and** the branch to not exist, so it'd be great for the UI to support showing multiple issues.
epic