Avoid re-scanning the whole input ROSequence when getting position in Utf8JsonReader (dotnet/corefx#35310)
* Make sure SequencePosition is saved as part of JsonReaderState
* Avoid rescanning whole ROSequence when getting position.
* We don't guarantee the position for invalid JSON.
* Remove isSingleSegment check when getting position and add single
segment tests
* Address feedback: remove else block and add some comments.
Commit migrated from https://github.com/dotnet/corefx/commit/
b85d017ecac090e6966822f159b48e7edfef37ce