Fix routing of CatchAll tokens
[sgen] Add internal test helper for sgen-toggleref.
[sgen] We must do bridge processing with all sgen locks taken.
[sgen] Split mark/clean phase of sgen-toggle processing to account for transitive liveness.

Given two TG objects A and B. A is strong, B is weak, A points to B. B should remain registered
for TG processing since it's reachable thru A.

This means we have to split processing in multiple steps. Phase one marks all strong refs that should
happen before finalizer processing and phase two that happens after finalizers that cleanup those
that turned unreachable.
[sgen] Add regression test for toggleref transient marking bug.
[sgen] Ensure minor_collection_allowance is always initialized. This avoid a spurious GC on startup.
[runtime] some inline api docs
[System.Runtime.Serialization] Fix from Brendan Zagaeski for bug #17663
Add System.Net.Http documentation
Fix the build.
Add documentation for CFNetworkHandler
Added new API mono_runtime_set_main_args() and fixed CommandLine for embedders.

The new API allows to set the program arguments from embedders that don't call
mono_jit_exec() and related functions that set them automatically. This change
also fixes the NullRef exception that would happen if the arguments are not set.
Merge pull request #913 from Daniel15/fix-catchall-routing-master

Fix routing of CatchAll tokens (Bug #17960) - on master