Fix bug in recursive diff

The recursive diff would stop if one of the root keys held identical
values. I have fixed the issue and added a test case that showcases it.

Fixes #23
Merge branch 'master' into fix_recursive_diff
Merge pull request #32 from bmarini/fix_recursive_diff

Fix bug in recursive diff