Is it my understanding that when using Selenium.WebDriver v3.7 from NuGet I require a current version of geckodriver in order to interact with Firefox ESR v52.4.1. However, I have managed to get tests running and successfully passing without geckodriver being involved at all.
I believe it is because I have enabled the legacy implementation option when instantiating the RemoteWebDriver, as illustrated below.
FirefoxOptions options = new FirefoxOptions
{
    UseLegacyImplementation = true,   // means that geckodriver is not required
    BrowserExecutableLocation = ...,  // ensures authorised Firefox version used
    Profile = ...                     // an instance of FirefoxProfile
};
RemoteWebDriver remoteWebDriver = new FirefoxDriver(options);
A number of questions to help me understand the details:
- Does this mean that 
Selenium.WebDriveris talking directly to the Firefox browser using the Marionette protocol? - If so, does this setup rely on libraries currently distributed with the NuGet package that might be (will?) be dropped in a forthcoming release?
 - If so, any idea which release or when that is likely to be?
 
Thanks!