xmltool.cs fix for writing output to files

A bug in argument handling meant that "mono-xmltool --prettyprint source.xml dest.xml" fails to write dest.xml and erases the contents of source.xml
[boehm] Add toggleref support for boehm. This is line by line port of the sgen code, so keep them in sync.
[boehm] Integrate toggleref support into the runtime.
Merge pull request #912 from Treer/patch-1

[FIX] mono-xmltool can't write to a file when prettyprinting, and corrupts the input file.
[Sys.Xml] Add unit test for Novell bug #594490

The unit test demonstrates the problem of serializing the
xml:lang attribute.
[Sys.Xml] Allow qualified names in XmlAttribute serialization

This fixes Mono bug #594490
(https://bugzilla.novell.com/show_bug.cgi?id=594490).
[Sys.Xml] Add unit test for Novell bug #599689

The unit test demonstrates a difference between Mono and .NET
(https://bugzilla.novell.com/show_bug.cgi?id=599689).
Fix the mobile build.

On the mobile profile, System.Xml.Linq is signed with the winfx key, not
with the ecma one, so we need a different [assembly: InternalsVisibleTo].
[Sys.Xml] Fix Novell bug #599689

This change fixes #599689
(https://bugzilla.novell.com/show_bug.cgi?id=599689) by making the
output of XmlSchemaException.ToString() match the output under .NET.
Merge pull request #921 from ermshiperete/novell-bug-594490

Allow qualified names in XmlAttribute serialization
Merge pull request #922 from ermshiperete/novell-bug-599689

Fix Novell bug 599689
Revert "[runtime] Add support for jagged array ctors which create an array of arrays. Fixes #17944."

This reverts commit 2136f8f0bcc04fd6ad818509f1db0230014f6187.

Revert this as it breaks make check PROFILE=net_2_0 in corlib.
[runtime] Switch the order of LLVM_LIBS and LLVM_LDFLAGS on the linker command line. Hopefully fixes #17931.
[corlib] Add missing api
[runtime] Fix an assertion which is hit if thread_cleanup () is called for a thread after it has been finalized during shutdown.
NUnitLite does not know Assert.IsInstanceOfType().
[sgen] Fix cardtable for huge (>4gb) objects on 64bit.

We use an overlapping card table on 64 bits, meaning that the address
space wraps around our card table (every 4gb).  We had assumed in a few
places that an object could wrap around the end of the card table at most
once, but with objects larger than 4gb that is not the case.

Fixes the corlib test suite crash on OSX/64bit
(in SortedListTest.TestCapacity4).
[corlib] Disable an OOM test which shouldn't fail on 64 bit machines.
[corlib] Method signature fixes
Fix this again.