[ChromeDriver] W3C compliant parsing proxy setting

Update parsing of proxy settings in session capabilities, for W3C
compliance. Changes include:
* Handle noProxy containing a list of strings.
* Handle socksProxy and socksVersion.
* Return kInvalidArgument for errors.

Bug: 884755, chromedriver:2537
Change-Id: I545291b8249e147f75babee5dfe72137bfc4cdca
Reviewed-on: https://chromium-review.googlesource.com/1226096
Reviewed-by: Caleb Rouleau <crouleau@chromium.org>
Commit-Queue: John Chen <johnchen@chromium.org>
Cr-Original-Commit-Position: refs/heads/master@{#591496}(cherry picked from commit 1b25ac3d1c6342ef8af34041dd545067b8f815bf)
Reviewed-on: https://chromium-review.googlesource.com/1228303
Cr-Commit-Position: refs/branch-heads/3538@{#469}
Cr-Branched-From: 79f7c91a2b2a2932cd447fa6f865cb6662fa8fa6-refs/heads/master@{#587811}
2 files changed