Fix part of issue #371 and add test.
Kill Threading's copy of ReferenceComparer
Fix List.Enumerator not being a struct
Stop using Debug.WriteLine because it !@%*(!@%*ing blocks for no reason

Conflicts:

	JSIL/Transforms/StaticAnalysis/EmulateStructAssignment.cs
Fix reference writes not cloning structs
Fix issue #466
Fix issue #395.
Fix BinaryTrees choking on new invocation ThisReference copy semantics
Correctness fixes
Remove implicit bool conversion
Added sorting in $BuildMethodGroups based on distance from type. Fix #368.
Possible fix for incorrect selecting method FastOverloadDispatch (#368)
Fix order of check this to skip adding MethodSignatures twice.
Reflection type Generic information properties fixed.

--HG--
extra : source : dea6ca7686321354bd500c63dde980da8f81cef9
extra : amend_source : df60b530b5990e7910208356f5770760d03f20e6
Make ReflectionTypeGenericInfo failures easier to understand in test runner.
Fixed problem with calling interface generic method with generic arguments #348. Test added.
Changed order of checks.
Fixed test path.
Split out issue from #479 from the rest of the ReflectionTypeGenericInfo test.
Added closed generic method info, implemented MakeGenericMethod. Added possiblity to Invoke closed generic through reflection. Test added.

--HG--
extra : source : e5a4c33dd8b62bb49cfde120631f7da1d3c85e8e
Implemented MethodInfo properties:
IsGenericMethod, IsGenericMethodDefinition, ContainsGenericParameters

--HG--
extra : source : 9222085b9c9dfa40a82df5afc7d823df7fa93961