Improve ABCREM on 64-bits architectures

Array indexes can be 32-bits integers even on 64-bits
architectures. This causes most loops to fail Array Bounds Checking
REMoval because the index is sign-extended before the check (see
mini_emit_ldelema_1_ins).

Sign-extending an I4 to I8 preserves its value, hence it is possible
to propagate the relation between the variables.
Change System.Windows.Forms.DataVisualization PKT to match Windows.

This commit licensed as MIT/X11.
Avoid infinite loop in property getter.

This commit licensed as MIT/X11.
Implement GroupDescription based on moonlight implementation
[sdb] The sdb library depends on Process.Start returning a Process object, so force UseShellExecute to false.

This fixes a massive breakage on wrench.
[jit] Avoid nullifying class init trampolines for recursive calls to class initializers. Fixes #16489
Merge pull request #859 from antoniusriha/groupDescription

Implement GroupDescription based on moonlight implementation
Merge pull request #858 from madewokherd/datavis

System.Windows.Forms.DataVisualization fixes
[gsharedvt] Avoid using the variable size code paths for non-variable size types with some array opcodes. Fixes #17023.
[mcs] Await flow analysis uses resolved expression. Fixes #16840
[mcs] Better check for value type base call. Fixes #16806
[mcs] Type arguments resolve failure needs to be reported after probing mode
[corlib] Update datetime patters. Fixes #17044
[runtime] Call mono_class_setup_methods () before accessing klass->method.count. Fixes #16883.
[runtime] Avoid RuntimeHelpers.EnsureSufficientExecutionStack () failing on windows. Works around #16776.
[jit] Emit calls to class init trampolines for fields accesses inside inline methods in AOT mode. Fixes #16461.
[sdb] Add async variants to the InvokeMethod methods.
Merge pull request #852 from ranma42/abc-64bits

Improve ABCREM
[jit] Fix the handling of OP_ISUB_IMM in abcrem.
[runtime] Fix yet another metadata problem with dynamically created types. Fixes #14977.