## Meta
OS:  macOS
Selenium Version:  3.11, code indicates this should be in master still
Browser:  Chrome

## Expected Behavior
When visiting a page/servlet that does not exist in Grid, a 404 status code should be returned.

## Actual Behavior
A 200 status code is returned for pages that do not exist.

## Steps to reproduce
1) Launch a hub or node
2) Open your browser's network tab
3) Visit localhost:4444/thisdoesntexist

```
Request URL: http://localhost:4444/thisdoesntexist
Request Method: GET
Status Code: 200 OK
```

## More Information
It appears the design for any [non-registered routes](https://github.com/SeleniumHQ/selenium/blob/5457171bd52747eed2ab625607d29670448f4523/java/server/src/org/openqa/grid/selenium/GridLauncherV3.java#L270) to direct to `DisplayHelpServlet`, which [returns the 200](https://github.com/SeleniumHQ/selenium/blob/5457171bd52747eed2ab625607d29670448f4523/java/server/src/org/openqa/grid/web/servlet/DisplayHelpServlet.java#L122).

Considering I typed a page that should not exist, I feel it may be more obvious if a 404 is returned to indicate a problem.

Context: My application was requesting a custom servlet by the wrong name, and became confused when a 200 was returned but the proper action did not occur. A 404 would have very quickly jumped out as a route issue.
if (resource.contains(HELPER_SERVLET_ASSET_PATH_PREFIX) &&
        !resource.replace(HELPER_SERVLET_ASSET_PATH_PREFIX, "").contains("/") &&
        !resource.replace(HELPER_SERVLET_ASSET_PATH_PREFIX, "").equals("")) {
      
      resource = resource.replace(HELPER_SERVLET_ASSET_PATH_PREFIX, "");
      in = getResourceInputStream(resource);
      if (in == null) {
        response.sendError(HttpServletResponse.SC_NOT_FOUND);
      } else {
        response.setStatus(200);
        ByteStreams.copy(in, response.getOutputStream());
      }
    } else {
      
      in = getResourceInputStream(HELPER_SERVLET_TEMPLATE);
      if (in == null) {
        response.sendError(HttpServletResponse.SC_NOT_FOUND);
      } else {
        StringBuilder jsonBuilder = new StringBuilder();
        try (JsonOutput out = new Json().newOutput(jsonBuilder)) {
          out.setPrettyPrint(false).write(servletConfig);
        }
        final String json = jsonBuilder.toString();
        final String htmlTemplate =
          new BufferedReader(new InputStreamReader(in, "UTF-8")).lines().collect(Collectors.joining("\n"));
        final String updatedTemplate =
          htmlTemplate.replace(HELPER_SERVLET_TEMPLATE_CONFIG_JSON_VAR, json);
        response.setContentType("text/html");
        response.setCharacterEncoding("UTF-8");
        response.setStatus(200);