Fix caching for latest Perl/Memoize

There seems to be a regression in latest Perl and/or Memoize which breaks
tied variables when used together with LIST_CACHE => 'MERGED'. As a result
XMLTV --cache stops to store any data inbetween runs into the cache file.

As a work around we replace the 'MERGE' with 'FAULT', i.e. we no longer
allow accessing memoized functions in list context. A quick browse through
the XMLTV source code revealed that no user of XMLTV::Memoize uses it to
memoize functions that return non-scalars.

NOTE: if grabbers should start to fail after this change then please use
      the line information provided by the abort message and change

         ... foobar(...) ...

      to

         ... scalar( foobar(...) ) ...
- main: implement randomized access pattern
- test: add "norandomize" option
- documentation: fix email address
Update comments with URL to Memoize bug report