Add json parser reporting accurate source locations.

The json parser is a copy of "package:json/json.dart" where the parser has been modified to report accurate source locations (in absolute position from the beginning of the contents) to the [JsonListener] interface.

The parser will be used to implement "smarter" validators for json file with a specific format (e.g. manifest.json).
Yup, that would be good. Otherwise they'd be visible outside the library. We wouldn't want that if this library had a real public API. Since it's just a testing library, keeping the public api clean isn't as important. But, prefixing with `_` would be consistent w/ what we do elsewhere.