Avoid a `try!` and an IUO in `XCTVaporTests` (#2585)
Avoid a `try!` and an IUO in `XCTVaporTests` (#2585)

* After analysis this seems a breakage safe change. The XCTest runner calls `setUpWithError`, then `setUp`.
* `app?` since otherwise `tearDown` crashes the whole suite should `app()` throw or any other reason cause a user to not call `super`
* `app = nil` since otherwise a user that fails to call super in some circumstances could accidentally use the `app` from a previous run potentially resulting in scenarios as bad as masking failing tests
vapor/vapor,vapor/vapor,vapor/vapor,vapor/vapor