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).
This line is longer than 80 chars; it could be split like this:

```dart
events.add(new _LoggingEvent(
    kind, 
    span, 
    value,
    lineOffsets.getLineColumn(span.start),
    lineOffsets.getLineColumn(span.end)));
```

Note that this is my personal preferred style; other people on the team use other conventions. But all of them should meat the requirements of the Dart Style Guide.