Initial work to make the mono csproj files mroe readily compilable in Visual Studio. This is work finally following up on my offer in http://lists.ximian.com/pipermail/mono-devel-list/2012-May/038908.html.
Add a file with ivsual studio settings with (trying to conform to) the Mono coding guildelines

Format genproj.cs to the Mono coding guildelines
solution and VS project file generation improvements. Get solutions that include assemblies related to a particular profile, and their dependencies. Currently at a stage where most of the System.* for .NET 2.0 compile (although the assemblies end up targeting v4.0 runtime)
Merge remote-tracking branch 'upstream/master'
Document the Visual Studio csproj and .sln generation, tidy up/fixes. Getting ready for a pull request.
minor refactor for solution files names generation
Add changes to the main Makefile.am, not only Makefile which is not versioned
FIX: doubling up on curly braces around GUIDs in the solution files

Ongoing work to handle the PrebuiltSystem alias and to figure out what to do where no prior matching assembly name exists
Make Is64BitProcess internal to avoid mobile define
update rx import source builder to build csproj files for mobile profiles too.
[rx] add missing project file generator helper files.
A weak link target is zeroed before we unregister it. Avoid a race condition if we suspend in the middle. Fixes #9590

	* sgen-fin-weak-hash.c: A mutator thread unregistering a weak link does zero it before staging the
	request for unregister. This is done without holding any GC lock, which means it can be stopped at any
	point in between.

	Storing zero breaks because REVEAL_POINTER xors the value resulting in an invalid pointer and code walking
	the weak table tries to poke that pointer. Encoding hidden zero (IOW -1) does not work either because we range
	check those values and for the major collection we pass (0, ~0) as the valid range.
Add test for #9590.
[sgen] Cleanup, remove object ranges for finalization and weak link code, they no longer are needed.
[sgen]Rework the ephemeron code to not rely on object ranges and make sure it works with split nursery.

	* sgen-gc.c (sgen_is_object_alive): Extract sgen_major_is_object_alive function.

	* sgen-gc.c: Add sgen_is_object_alive_for_current_gen and sgen_is_object_alive_and_on_current_collection
	functions that handle old objects during nursery collections as either all live or all dead.

	* sgen-gc.c (sgen_object_is_live): Use sgen_is_object_alive_and_on_current_collection which is more
	robust, handling to-space nurseries and pinned/evacuated old gen objects. Bridge now works with those.

	* sgen-gc.c: Get rid of heap range for the ephemeron functions and use sgen_is_object_alive_for_current_gen
	which produces the same result, which is treat all old gen objects as alive during a minor collection.

	* sgen-gc.c (clear_unreachable_ephemerons): Don't add remsets for elements on arrays they are not really needed
	since we scan all ephemerons on all collections.
mobile csproj generator needed a lot of fixes to generate buildable projects...
Merge pull request #532 from alesliehughes/master

AxHost Changes
Merge pull request #530 from jmp75/visualstudio-build

First iteration to improve the build process using Visual Studio