Ensure JSON TryGetXXX sets values to default if returning false dotnet/corefx#37119 (dotnet/corefx#37838)
* Add tests to ensure TryGetXXX returns default on false dotnet/corefx#37119
* Ensure TryGetXXX value is default when result is false dotnet/corefx#37119
* Ensure JsonDocument's TryGetXXX use default value on false dotnet/corefx#37119
* Ensure value never leaks on exception path per PR review
- Also use `0` with non-generic default assignments to primitive number types per PR review
Commit migrated from https://github.com/dotnet/corefx/commit/
f2c2e2f5907c66f9c4912db55f2cb34923059ea6