Adding ability to set additional ChromeOptions in the .NET bindings

This allows the ability to set user profile preferences and local state
preferences using the ChromeOptions class. The new
AddUserProfilePreference and AddLocalStatePreference methods correspond to
the "prefs" and "localState" capabilities documented in the chromedriver
documentation. Note that the values passed in to these methods must be
JSON-serializable, and no validation is done on these values at present.
We now also allow setting the "detach" capability, which allows the user
to specify that Chrome remain running after chromedriver.exe has quit.

This commit also removes legacy code for the obsolete chrome.binary and
chrome.switches capabilities, and changes the command line arguments to
chromedriver.exe to include two hyphens, instead of one (e.g., "--silent"
instead of "-silent").
Bump the guava version to 15.
Removing a reference to a deleted test class
Renaming a test method
Tests should not depend on external pages, even Google :)
Adding tests for clicks to wrapped inline elements (a and span)
Implementing a safer way to convert objects to string
Ignorin newly added tests in Opera
Adding more informative error message. Fixes issue 6293
Deletes httpsProxy usage which is duplicate of sslProxy.
Adds noProxy info to Proxy JSON object information
Makes subclasses of By serializable.

Fixes issue #2670.
Fixing getLocation to work on scrolled pages
Don't remove log handlers since this makes it impossible to customize the logging system.

This effectively reverts bcc284686ce7b994ac47308b52b87d292cfabe2f.
Pushing atoms changes.
- Reconciling the many "scroll into view" functions in bot.dom
- Allow typing on an element that is already in focus, even if it is not
  "interactable" (e.g. page JS focused an offscreen DIV)
- Lint clean-up
Do not use SauceDriver to check the effective platform as that will
fail when running locally
Bumping the atoms version used by the android apk
Bumping the version of wgxpath, which also means bumping the android apk.
Updating crazy-fun javascript compiler to output C#
Implementing elementScrollBehavior capability in FirefoxDriver