* `RendererContext` abstract class
* Delete rt64_layer
* Implement renderer creation callback
* Make `GraphicsConfig` an abstract class
* Remove rt64
* Add renderer callback to `ultramodern::set_callbacks`
* Fix rebase
* Change setup_result's visibility to protected
* Declare abstract `is_equal` method instead of operators
* Various fixes
* Fix issues
* trigger_config_action
* Move GraphicsConfig back to ultramodern
* Change `update_config` to return if any changes were applied
* Rename renderer_wrapper to renderer_context
* Remove SDL2 and other libraries
* Allow registering get_graphics_api_name
* Move WindowHandle to renderer namespace
* Comments explaining which callbacks are required
* Fix CI
* Update readme
* `ULTRAMODERN_QUICK_EXIT` macro
* Remove --config from readme
* Add `add_compile_definitions(NOMINMAX)`
* Start moving some cont functions to ultramodern
* Implement osContStartQuery, osContSetCh
* Finish moving cont.cpp functions to ultramodern
* Add constexpr to _return
* Fix rumble not working
* Rename cont.cpp to input.cpp
* Test
* Start setting up user callbacks system
* Implement RSP callbacks
* move RSP callbacks (and related RSP stuff) to its own file
* Move destroy_ui to gfx_callbacks_t and change recomp::start to require rsp_callbacks_t
* error_handling.hpp
* Remove UserCallbacks in favor of threads_callbacks_t
* Add `ultramodern::set_callbacks` and some other cleanups
* Move most RSP stuff to librecomp
* Rename rsp_stuff.hpp to rsp.hpp
* Add rsp.cpp to librecomp cmake file
* review
* Remove `recomp::message_box`
* Fix missing rename