By using a dummy audio context, we can now make openrct2-cli start a headless instance without any SDL2 calls. SDL2 is still a dependency until we remove out the input code to openrct2-ui.
Create a dummy UI context and use that if headless is enabled. Some extra guards added to deal with the return values from the dummy class. It may be temporary until the window and input code is moved to openrct2ui.