json_dump_file: Open the output file in wb mode

For maximum compatibility.
Use %I64d format for printing long longs on Windows

Fixes GH-38.
Fix test file comparisons on MinGW

Don't output any DOS line terminators from json_process.

Issue GH-39.
Remove '+' and leading zeros from exponents in the encoder

Fixes GH-39.
Distribute jansson_config.h.win32
doc: The configure script can be used on MinGW
json_load* return NULL if the first argument is NULL
Avoid problems with object's serial number growing too big

Transform serial key comparison from substraction to real comparison.
Reset serial to zero in json_object_clear() to avoid it growing out of
bounds when reusing objects.

Closes GH-40.
Closes GH-41.
doc: The same JSON values must not be encoded in parallel

Closes GH-42.
JSON_DECODE_ANY

Closes GH-4.
Update the documentation of JSON_DECODE_ANY
Merge branch '2.2'

Closes GH-43.
Revert "json_dump_file: Open the output file in wb mode"

JSON is read as text, so line endings should be preserved.

This reverts commit 32cd82127390b9fd5b5d090bc3c279d3e4d9f3a6.
Merge branch '2.2'
Write number of bytes read to error position on successful decode

Closes #49.
Fix a potential memory leak
Make hashtable less generic

This will make it possible to implement json_object_foreach(). It
should also have some (positive) effect on speed.
Implement json_object_foreach()

Also change many places to use it internally to replace hand-crafted
iteration.

Closes #45, #46.
Add json_object_update_{existing,missing}

Closes #37.
Add support for optional object keys for json_unpack() and friends

Initial patch by Andrew Thompson.