When registering the FirefoxDriver's binary components, do not use multiple
appversion constraints, as form a logic or:
https://developer.mozilla.org/en-US/docs/Chrome_Registration#appversion

Instead, use appversion+platform to designate what version of each
binary-component to load
fix for small typo in variable in error message
Updating C# atoms creation to use static properties instead of fields
Adding attribute to C# generated atoms file to allow skipping static code analysis
Do not issue click for option elements on Windows Phone
Simplifying setting of bot.userAgent.WINDOWS_PHONE per review comment
Increasing IEDriverServer logging when waiting for navigation

This commit adds more detailed logging while the driver is waiting for a
page navigation to complete. It provides log lines for all of the cases
where the driver would consider the navigation to be incomplete, in
addition to logging the actual values for ready states when not found to
be 'complete'.
Fixing HTML dialog logic for redirected documents.

Getting the parent window of an HTML dialog's document can fail,
especially if the document changed out from under us before we could get
the window reference. The canonical case for this is a redirect using
JavaScript. Now we will sleep for a shorttime, then retry to obtain the
reference to the window object. Fixes issue #6224.
Fixing HTML dialog logic for self-closing documents.

HTML dialog windows opened using showModalDialog() have no way to
properly notify of their closing. The IE driver attempts to detect
closing of these windows by listening for user-initiated actions,
either by calling the WebDriver close method, or clicking on an
element that causes the dialog to close. This commit adds logic to
the method used for getting all window handles to validate the
existence of any HTML dialog windows, properly notifying the driver
if the OS-level window handle is no longer valid. Fixes issue #6249.
Improve support for using the HTML5 APIs through the remote
server by augmenting the session driver before attempting to
access HTML5 capabilities.  If the driver does not support the
requested feature, throw an UnsupportedCommandException instead of
a ClassCastException.
The Augmenter does not appear to work in the Android server, so fall back to basic adapters (which will yield more useful stack traces on errors anyway).
Allow args to passed to the JVM using the jvmArgs option.

Fixes issue 6346.
Code cleanup
Refactoring
Adding a new pause action to the interactions API (java binding)
Fixing Javadoc for getAttribute. Fixes issue 2443
Fix Selenium IDE icon not appearing on the toolbar for some users. Fixes issue #5712
Stop propagation of the webdriver-evaluate custom event when executing user
supplied JavaScript. Without this change, the event handler will trigger
twice for async scripts, causing the driver to attempt to evaluate the user
script twice, leading to unpredictable behavior.
Return an empty string instead of "null" when the browserName and version
capabilities are not set.
Bumping .NET bindings assembly versions for impending 2.36 release