Friendlier API to read from Json

As requested by @privat.

I'll fix the contribs according to the test results.

May be improved or to do:
- Reimplement using the AST nodes.
- Make `JsonValue` subclass of `Array` and/or `Map`
- Convert contribs to use json::dynamic