Uri.IriParsing can now be set by using an environment variable.
The Uri static constructor reads the environment variable MONO_URI_IRIPARSIN and sets Uri.IriParsing.
Changed Uri.ToString() to use property Uri.Parser.
Change UriParser to correctly parse scheme separator ":" or "://"
Schemes expect a separator ":" or "://" but unknown schemes can use either one, so the used delimiter is now stored in UriElement.
Support for custom scheme parsing.
Custom schemes can have a delimiter "://" with a host and a delimiter ":" without a host.
Added FormatFlag.HasHost and UriScheme.CustomWithHost.
Added method UriHelper.IsKnownScheme(string scheme).
Fixed path starting with '/' on custom schemes, mailto and news.
Updated method UriHelper.SupportsQuery to return false with news.
Removed schemes news: and custom: from tests.
Those schemes have a wrong behavior in .NET.
new Uri("news:a/a%30").ToString() == "news:a/a%30a/a0"