Remove dead code that could slow down enumeration.

The SecurePooledObjectUser struct was previously used as part of a 'thread safe' design for recycling stacks used for enumeration of tree-based collections. But the thread-safety effort was imperfect and removed a while back. The empty struct remained as a simple way to avoid having to make several changes to callers.

Stephen Toub recently was looking over the code and pointed out that this leftover code causes the C# compiler to emit try/finally blocks and call no-op code which may be slowing down enumeration, which is a hot path in many scenarios. So taking time to remove it now seems prudent.
Fix to build correctly if the repository root has spaces. For example: "C:\Program Files (x86)\repos\corefx"
Another optimization for ImmutableArray<T>.Builder.Sort to not create Comparer Wrapper for arrays of size 0 or 1
Added a check for array size in the sort methods before the wrapper gets created
Added a testcase to exercise sorting of 1 element array
Merge branch 'PerfTuning'
Merge branch 'master' of https://github.com/dotnet/corefx
Add test coverage for XPath and XDocument
Clean up Xml directory structure
Rename binary of System.Xml.XPath.XDocument tests
Update dependency to Microsoft.DotNet.BuildTools 1.0.13-prerelease

Build tools 1.0.13 has Nick's commit b7c62ee.. which builds each
assembly in to its own intermediate directory.  This is required
to fix a bug where XML tests would fail if they were rebuilt without
the workspace being cleaned because they would pick up incorrect
versions of resource files.