This reduces the coupling with testing.T, allowing many of the server's startup-related functions to return an error. This makes them more re-usable.