Support non-collection routes in ApiApplication

Currently, we assume all routes are either collection routes or the `/health/` route.
Often, the first or last thing we give to `join_paths` will be `""`. This often the case for `path_prefix`, for example.