Fix browser capabilities compatibility with ms.net by 1) Avoid issues with capabilities defined with same name, but diferent case. and 2) favor majorversion/minorversion capabilities, but fallback to majorver/minorver if not found, to preserve compatibility with previous versions.
See Reported Bug #4786 in bugzilla which this attempts to resolve (and seems to succesfully).

This is a one line change:  result = null; had to be set before going back to the 'retry' point in GetConnection..

This is/should-be safe because we had just disconnected result a few lines earlier.

Without this change, under certain conditions which would flag a retry, when it went to the retry point
it wouldn't reset 'result', and as a result the main loop at the top of the GetConnection() function would
be skipped (it has -- while (result == null) -- at the retry point, and it would always be not null when it reached
that on retry), after which point it would just continue to retry on the same result indefinitely, which would eventually
result in an exception being raised.
This is the addition of a quick and dirty NUnit test for Bug 4786

This bug was fixed in another commit/push by Robert Wilkens (me).
This NUnit test will fail without the patch (It will raise a
NullReferenceException from within mono), but with the patch for that
bug it will not raise an exception and the test will exit cleanly.

Please note, the top of this patch source sets up a temporary network
socket to listen to a port which pool.GetConnection() simply tries to connect
to.  No data is transfered so nothing needed to be done other than to
call Listen() on that socket which was bound to the port.  If the listen fails,
it means something else is listening already, which is fine, so we ignore
any excpetions from this part of the code (catch and ignore).
This is a minor change to earlier commit which removes a commented out
sql server that should not have been there.  It changes nothing functionally,
but the server is a temporary server, so referencing it didn't make sense.
Force disposal of Sqlite commands with using-statements in order to better isolate the unit tests.
[corlib] Fix NullRef when using dispose a CancellationTokenRegistration when the initial source has been disposed
Don't report unresolved using clause error in eval mode multiple times
This instance is not available in base context for anynymous method
Add missing dist files
Sqlite: Close the command before the connection when CommandBehavior.CloseConnection is specified. Fixes #5058.
Add gitignore for Mono.Data.Sqlite
Add fix and test case from bnc #650402
Get full expanded interface list when checking for new slot interface implementation. Fixed #5110
Merge branch 'master' of github.com:mono/mono
Resolve lock temporary variables before any embedded statement. Fixes #4994
Implement support for OP_LOADR4_MEMBASE/STORER4_MEMBASE with big offsets on ARM. Fixes #5093.
Implement full-aot support for ftnptr->delegate conversion using a new MonoNativeFunctionWrapper attribute, which should be attached to the delegate which will be used to wrap the native function. Fixes #4718.
Sqlite: Map DATETIME to System.DateTime. Fixes #5078.
Better error recovery from incomplete invocation expression. Fixes #4679
Insert unattached attributes to AST also for enum members. Fixes #4666