Bug 1053174 - Fixes to diff_results

See https://bugzilla.mozilla.org/show_bug.cgi?id=1053174.

Previously the diff was too picky - for example, if onerror was null in the reference and a function on the device, this would be flagged as a diff.

The "expected object" indicates that in the reference the value was an object with properties but on the device it is a non-object or null.

Sadly, I also had the direction of the diffs reversed so that missing items were flagged as added and vice versa.