Always dump, don't use flatten

This is using Data::Dumper always, rather than sometimes using the unhelpful "flatten" style.

For a common and simple case, e.g. comparing two hashrefs whose keys are all scalars, it means the difference between the old, unhelpful output:

```
not ok 1 - Compare straightforward hashrefs
#   Failed test 'Compare straightforward hashrefs'
#   at /dev/shm/test-differences line 6.
# +----+---------------------+---------------------+
# | Elt|Got                  |Expected             |
# +----+---------------------+---------------------+
# |   0|'one','three','two'  |'one','three','two'  |
# *   1|1,3,2                |1,4,2                *
# +----+---------------------+---------------------+
```

and the much more useful:

```
not ok 1 - Compare straightforward hashrefs
#   Failed test 'Compare straightforward hashrefs'
#   at /dev/shm/test-differences line 7.
# +----+---------------+---------------+
# | Elt|Got            |Expected       |
# +----+---------------+---------------+
# |   0|{              |{              |
# |   1|  one => 1,    |  one => 1,    |
# *   2|  three => 3,  |  three => 4,  *
# |   3|  two => 2     |  two => 2     |
# |   4|}              |}              |
# +----+---------------+---------------+
```

TODO: One remaining test failure - in `t/regression.t` - the test `Numbers and strings` which appears to be expecting a number and a quoted number to be considered identical, which they now are not.  Is it correct to consider them identical?  As I see it, it's failing the test because its current behaviour is correct.  Opinions welcome.