## Meta -
OS:  OSX
Selenium Version:  3.5.2 (head of repo)
Browser:  iOS Safari
Browser Version:  iOS 10.3

## Expected Behavior - Using Selenium Grid the platformName would remain unchanged (keep behavior from 3.4)

## Actual Behavior - With Selenium Grid the platformName is overridden by platform in ImmutableCapabilities because iOS is not defined in Platform.java

## Steps to reproduce -
(already found a temporary fix with help from Simon and Jim)
Run an iOS test against SauceLabs with 3.4 and 3.5. As part of NewSessionPayload (in 3.5) when creating the capabilities iOS is an unrecognized platform so platformName (originally iOS) is set to platform (Mac), providing a bad set of capabilities for the test to actually run.
}
        matcher = matcher.toLowerCase();
        if (os.isExactMatch(osName, matcher)) {
          return os;
        }
        if (os.isCurrentPlatform(osName, matcher) && isBetterMatch(previousMatch, matcher)) {
          previousMatch = matcher;
          mostLikely = os;
        }
      }
    }
    
    return mostLikely;
  }
  /**
   * Gets a platform with the name matching the parameter.
   *
   * @param name the platform name
   * @return the Platform enum value matching the parameter
   */
  public static Platform fromString(String name) {
    for (Platform platform : values()) {
      if (platform.toString().equalsIgnoreCase(name)) {
        return platform;
      }
    }
    for (Platform os : Platform.values()) {
      for (String matcher : os.partOfOsName) {
        if (name.toLowerCase().equals(matcher.toLowerCase())) {
          return os;