tests - introduce new json diff API

the intent is to replace json hamcrest, in which error reporting is not good enough.

still need to wrap it in a tester.

tests - json diff API - add ignorable extra keys feature
tests - introduce new json assertions
tests - introduce json merge after a diff
tests - json - add merged expect to assertion error details w/ ignore extra field
tests - use new json assertions mechanism
tests - fix warnings
tests - json - generate html report when data is too large

When json to be compared is too large, the output is very difficult to read.
Therefore we know generate a simple HTML report with more details and easier to browse.
tests - json - fix access to parent of top most path
tests - json - some merge fixes - improvement
jongo - fix helper to build startWith / ignoreCase patterns