### Feature and motivation

I think our CI should delete the drivers that exist on the runners and always use Selenium Manager. I know that this means if we break Selenium Manager that none of the tests will pass, but it's essentially dog-fooding our own product, and we need something that ensures it works. 

I think @diemol has an alternate proposal.

### Usage example

n/a
void settingTheHubFlagSetsTheGridUrlAndEventBusFlags() {
    String[] rawConfig =
        new String[] {
          "[node]", "hub = \"cheese.com\"",
        };
    Config config = new TomlConfig(new StringReader(String.join("\n", rawConfig)));
    NodeOptions nodeOptions = new NodeOptions(config);
    assertThat(nodeOptions.getPublicGridUri())
        .isEqualTo(Optional.of(URI.create("http:cheese.com:4444")));
  }
  @Test
  void settingTheHubWithDefaultValueSetsTheGridUrlToTheNonLoopbackAddress() {
    String[] rawConfig =
        new String[] {
          "[node]", "hub = \"http:0.0.0.0:4444\"",
        };
    Config config = new TomlConfig(new StringReader(String.join("\n", rawConfig)));
    String nonLoopbackAddress = new NetworkUtils().getNonLoopbackAddressOfThisMachine();
    String nonLoopbackAddressUrl = String.format("http:%s:4444", nonLoopbackAddress);
    NodeOptions nodeOptions = new NodeOptions(config);
    assertThat(nodeOptions.getPublicGridUri())
        .isEqualTo(Optional.of(URI.create(nonLoopbackAddressUrl)));
  }
  private Condition<? super List<? extends Capabilities>> supporting(String name) {
    return new Condition<>(
        caps -> caps.stream().anyMatch(cap -> name.equals(cap.getBrowserName())),
        "supporting %s",
        name);
  }
  public static class HelperFactory {