Test special case of '#' escaping in fragment.
When a fragment contains a unescaped or escaped '%' characters '#' are escaped in some cases.
Changed '#' in a fragment to be escaped in a special case.
When a fragment contains a unescaped or escaped '%', characters '#' are escaped in some cases.
UriHelper.GetScheme is now case insensitive.
UriParser is now able to print empty user info.
Removed ToString call on OriginalString when source is null.
Uri.Merge is no longer leaving source with a null value.
Changed cr lf end of lines to lf.