This separates the logic for starting the server, creating the FastAPI application, registering lifecycle hooks, and adding new routes. It should make it pretty quick to expand upon each component individually, and will allow us to add more features to the server cleanly. As a manual validation ...