Shut down the application's event loop when it gets deallocated.
Shut down the application's event loop when it gets deallocated.

Without this, every time we initialize an `Application`, it leaks an event loop thread. This probably won't happen in production, but it might happen in tests, where each test case creates its own `Application` instance for testing.

qutheory/vapor,qutheory/vapor,vapor/vapor,vapor/vapor,vapor/vapor,qutheory/vapor,vapor/vapor