Implement return value passing for ARM hard float.

This is currently only for float32/float64 values. They are passed
in the d0 register. The code is a bit complicated because we only
speak float64 in the JIT, so float32 values have to be converted
to/from float64.
Print detected ARM version in configure.
Implement add_float () for hard float on ARM.
Add register assignment for double-precision args on ARM hard float.
Make sure FPRs aren't used for implicit arguments on ARM hard float.
Implement support for single-precision args on ARM hard float.

This is done with a gross hack that maintains a list of args
in the MonoCallInst and emits them as late as possible. This
is not pretty, but we have to work around the register
allocator. See the code comments for details.
Correct the VFP check in exceptions-arm.c.

This should be a runtime decision, and also should be in
effect when using the hard float ABI (ARM_FPU_VFP_HARD).
Use d14 and d15 as scratch VFP registers.

Using d0 and d1 is problematic because they're argument registers
and so can end up being clobbered by instructions inserted in the
middle of a call sequence.

d14 and d15 on the other hand are OK because they don't have any
particular meaning in the ABI, and we don't even use them in the
register allocator at the moment anyway.
Maintain max_len when emitting calls on ARM hard float.

It has to be adjusted dynamically as with OP_SWITCH since
we emit extra instructions in the various call opcodes when
the argument list contains single-precision floats.

Also, allocate extra storage space when needed (we would
potentially overflow previously).
Avoid clobbering IP when passing single-precision args on ARM hard float.
Fix comment style.
ProjectCollection.DefaultToolsVersion is settable.
Add missing exception types.
update .csproj.
Add experimental "MSBuild.exe" implementation which is based on Microsoft.Build.dll.
[xbuild]: Implement task batching for properties; fixes #16403.
Hopefully the --enable-loadedllvm build on linux.
Update PointConverter.cs
Update .csproj (to add MSBuild.csproj).
Merge pull request #823 from DavidKarlas/master

Update PointConverter exception message from RectConverter to PointConverter